diff options
Diffstat (limited to 'xorg-server/xkeyboard-config')
62 files changed, 6704 insertions, 6025 deletions
diff --git a/xorg-server/xkeyboard-config/compat/default b/xorg-server/xkeyboard-config/compat/default.in index 9527a31cf..4c4461fb9 100644 --- a/xorg-server/xkeyboard-config/compat/default +++ b/xorg-server/xkeyboard-config/compat/default.in @@ -1,12 +1,12 @@ -default xkb_compatibility "default" {
- include "basic"
- augment "mousekeys"
- augment "accessx(basic)"
- augment "misc"
- augment "iso9995"
- augment "level5"
-// ??should be changed/renamed/removed
-// augment "xfree86"
- augment "japan"
- augment "caps(caps_lock)"
-};
+default xkb_compatibility "default" { + include "basic" + augment "mousekeys" + augment "accessx(basic)" + augment "misc" + augment "iso9995" + augment "level5" +// ??should be changed/renamed/removed +// augment "xfree86" + augment "japan" + augment "caps(caps_lock)" +}; diff --git a/xorg-server/xkeyboard-config/compat/makefile b/xorg-server/xkeyboard-config/compat/makefile new file mode 100644 index 000000000..225163288 --- /dev/null +++ b/xorg-server/xkeyboard-config/compat/makefile @@ -0,0 +1,20 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +THISDIR=compat + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\$(THISDIR) + +dist_xkbdata_compat_DATA = \ +accessx basic caps complete \ +default iso9995 \ +japan keypad ledcaps \ +lednum ledscroll level5 \ +misc mousekeys norepeat \ +olpc pc pc98 xfree86 \ +xtest README + +DATA_FILES=$(dist_xkbdata_compat_DATA:%=$(DESTDIR)\%) + +include ..\xkbrules.mak diff --git a/xorg-server/xkeyboard-config/configure.in b/xorg-server/xkeyboard-config/configure.in index 80af27564..4cb214f1a 100644 --- a/xorg-server/xkeyboard-config/configure.in +++ b/xorg-server/xkeyboard-config/configure.in @@ -1,96 +1,96 @@ -AC_INIT(xkeyboard-config, 2.1) -AC_CONFIG_SRCDIR(rules/base.xml.in) -AM_INIT_AUTOMAKE([foreign dist-bzip2]) -AM_MAINTAINER_MODE - -AC_SUBST(VERSION) - -AC_PATH_PROG([XKBCOMP], [xkbcomp], [not_found]) -if test x$XKBCOMP = xnot_found ; then - AC_ERROR([xkbcomp is required to install the xkb data files]) -fi - -AC_ARG_WITH( xkb_base, - [AS_HELP_STRING([--with-xkb-base=DIR],[XKB base path @<:@DATADIR/X11/xkb@:>@])], - xkb_base="$withval", - xkb_base="${datadir}/X11/xkb" ) - -AC_ARG_WITH( xkb_rules_symlink, - [ --with-xkb-rules-symlink=NAME1(,NAME2)* create symlink(s) to "old style" rules files (xfree86 and/or xorg)], - xkb_rules_symlink="$withval" ) - -AC_ARG_ENABLE( compat_rules, - [ --enable-compat-rules create compatibility rules], - enable_compat_rules="$enableval", - enable_compat_rules="yes" ) - -AM_CONDITIONAL(CREATE_RULES_SYMLINK, test "x$xkb_rules_symlink" != "x") - -AM_CONDITIONAL(USE_COMPAT_RULES, test "x$enable_compat_rules" = "xyes") - -# **** -# i18n -# **** -AC_PROG_INTLTOOL(0.30) - -GETTEXT_PACKAGE=xkeyboard-config -AC_SUBST(GETTEXT_PACKAGE) -AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", [Gettext package]) - -AM_GLIB_GNU_GETTEXT - -ALL_LINGUAS="af az bg ca crh cs da de el en_GB eo es fi fr gl hu id it ka ko ky lt nb nl pl ro ru rw sk sl sq sr sv tr uk vi zh_CN zh_TW" - -AC_SUBST(xkb_base) -AC_SUBST(xkb_rules_symlink) - -AC_OUTPUT([ po/Makefile.in -Makefile -compat/Makefile -geometry/Makefile -geometry/digital_vndr/Makefile -geometry/sgi_vndr/Makefile -keycodes/Makefile -keycodes/digital_vndr/Makefile -keycodes/sgi_vndr/Makefile -keymap/Makefile -keymap/digital_vndr/Makefile -keymap/sgi_vndr/Makefile -keymap/sun_vndr/Makefile -semantics/Makefile -rules/Makefile -rules/bin/Makefile -rules/compat/Makefile -symbols/Makefile -symbols/digital_vndr/Makefile -symbols/fujitsu_vndr/Makefile -symbols/hp_vndr/Makefile -symbols/macintosh_vndr/Makefile -symbols/nec_vndr/Makefile -symbols/nokia_vndr/Makefile -symbols/sgi_vndr/Makefile -symbols/sony_vndr/Makefile -symbols/sun_vndr/Makefile -symbols/xfree68_vndr/Makefile -types/Makefile -xkeyboard-config.pc -xkeyboard-config.spec -docs/Makefile -]) - -echo '***********************************************************' -echo " $PACKAGE_NAME is configured with the following parameters:" -echo " XKB base directory: $xkb_base" -if test -z "$xkb_rules_symlink" ; then - echo " Symbolic link(s) to legacy rules are not created" -else - echo " Symbolic link(s) to legacy rules: $xkb_rules_symlink" -fi - -if test "$enable_compat_rules" = "yes" ; then - echo " Compatibility rules are included" -else - echo " Compatibility rules are not included" -fi -echo '***********************************************************' - +AC_INIT(xkeyboard-config, 2.1)
+AC_CONFIG_SRCDIR(rules/base.xml.in)
+AM_INIT_AUTOMAKE([foreign dist-bzip2])
+AM_MAINTAINER_MODE
+
+AC_SUBST(VERSION)
+
+AC_PATH_PROG([XKBCOMP], [xkbcomp], [not_found])
+if test x$XKBCOMP = xnot_found ; then
+ AC_ERROR([xkbcomp is required to install the xkb data files])
+fi
+
+AC_ARG_WITH( xkb_base,
+ [AS_HELP_STRING([--with-xkb-base=DIR],[XKB base path @<:@DATADIR/X11/xkb@:>@])],
+ xkb_base="$withval",
+ xkb_base="${datadir}/X11/xkb" )
+
+AC_ARG_WITH( xkb_rules_symlink,
+ [ --with-xkb-rules-symlink=NAME1(,NAME2)* create symlink(s) to "old style" rules files (xfree86 and/or xorg)],
+ xkb_rules_symlink="$withval" )
+
+AC_ARG_ENABLE( compat_rules,
+ [ --enable-compat-rules create compatibility rules],
+ enable_compat_rules="$enableval",
+ enable_compat_rules="yes" )
+
+AM_CONDITIONAL(CREATE_RULES_SYMLINK, test "x$xkb_rules_symlink" != "x")
+
+AM_CONDITIONAL(USE_COMPAT_RULES, test "x$enable_compat_rules" = "xyes")
+
+# ****
+# i18n
+# ****
+AC_PROG_INTLTOOL(0.30)
+
+GETTEXT_PACKAGE=xkeyboard-config
+AC_SUBST(GETTEXT_PACKAGE)
+AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", [Gettext package])
+
+AM_GLIB_GNU_GETTEXT
+
+ALL_LINGUAS="af az bg ca crh cs da de el en_GB eo es fi fr gl hu id it ka ko ky lt nb nl pl ro ru rw sk sl sq sr sv tr uk vi zh_CN zh_TW"
+
+AC_SUBST(xkb_base)
+AC_SUBST(xkb_rules_symlink)
+
+AC_OUTPUT([ po/Makefile.in
+Makefile
+compat/Makefile
+geometry/Makefile
+geometry/digital_vndr/Makefile
+geometry/sgi_vndr/Makefile
+keycodes/Makefile
+keycodes/digital_vndr/Makefile
+keycodes/sgi_vndr/Makefile
+keymap/Makefile
+keymap/digital_vndr/Makefile
+keymap/sgi_vndr/Makefile
+keymap/sun_vndr/Makefile
+semantics/Makefile
+rules/Makefile
+rules/bin/Makefile
+rules/compat/Makefile
+symbols/Makefile
+symbols/digital_vndr/Makefile
+symbols/fujitsu_vndr/Makefile
+symbols/hp_vndr/Makefile
+symbols/macintosh_vndr/Makefile
+symbols/nec_vndr/Makefile
+symbols/nokia_vndr/Makefile
+symbols/sgi_vndr/Makefile
+symbols/sony_vndr/Makefile
+symbols/sun_vndr/Makefile
+symbols/xfree68_vndr/Makefile
+types/Makefile
+xkeyboard-config.pc
+xkeyboard-config.spec
+docs/Makefile
+])
+
+echo '***********************************************************'
+echo " $PACKAGE_NAME is configured with the following parameters:"
+echo " XKB base directory: $xkb_base"
+if test -z "$xkb_rules_symlink" ; then
+ echo " Symbolic link(s) to legacy rules are not created"
+else
+ echo " Symbolic link(s) to legacy rules: $xkb_rules_symlink"
+fi
+
+if test "$enable_compat_rules" = "yes" ; then
+ echo " Compatibility rules are included"
+else
+ echo " Compatibility rules are not included"
+fi
+echo '***********************************************************'
+
diff --git a/xorg-server/xkeyboard-config/geometry/digital_vndr/makefile b/xorg-server/xkeyboard-config/geometry/digital_vndr/makefile new file mode 100644 index 000000000..12d4c37fc --- /dev/null +++ b/xorg-server/xkeyboard-config/geometry/digital_vndr/makefile @@ -0,0 +1,12 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\geometry\digital_vndr + +dist_geom_DATA = \ +lk pc unix + +DATA_FILES=$(dist_geom_DATA:%=$(DESTDIR)\%) + +include ..\..\xkbrules.mak diff --git a/xorg-server/xkeyboard-config/geometry/makefile b/xorg-server/xkeyboard-config/geometry/makefile new file mode 100644 index 000000000..896e186f4 --- /dev/null +++ b/xorg-server/xkeyboard-config/geometry/makefile @@ -0,0 +1,25 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +THISDIR=geometry + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\$(THISDIR) + +dist_xkbdata_geometry_DATA = \ +amiga ataritt chicony \ +dell everex fujitsu \ +hhk hp keytronic kinesis \ +macintosh microsoft nec nokia \ +northgate pc sanwa sony thinkpad \ +sun typematrix winbook README + +DATA_FILES=$(dist_xkbdata_geometry_DATA:%=$(DESTDIR)\%) + +SUBDIRS = digital_vndr sgi_vndr + +load_makefile $(SUBDIRS:%=%\makefile MAKESERVER=0 DEBUG=$(DEBUG);) + +extrastuff: $(SUBDIRS:%=%\all) + +include ..\xkbrules.mak diff --git a/xorg-server/xkeyboard-config/geometry/sgi_vndr/makefile b/xorg-server/xkeyboard-config/geometry/sgi_vndr/makefile new file mode 100644 index 000000000..285067802 --- /dev/null +++ b/xorg-server/xkeyboard-config/geometry/sgi_vndr/makefile @@ -0,0 +1,13 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\geometry\sgi_vndr + + +dist_geom_DATA = \ +indigo indy O2 + +DATA_FILES=$(dist_geom_DATA:%=$(DESTDIR)\%) + +include ..\..\xkbrules.mak diff --git a/xorg-server/xkeyboard-config/keycodes/digital_vndr/makefile b/xorg-server/xkeyboard-config/keycodes/digital_vndr/makefile new file mode 100644 index 000000000..9cf1180e5 --- /dev/null +++ b/xorg-server/xkeyboard-config/keycodes/digital_vndr/makefile @@ -0,0 +1,12 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\keycodes\digital_vndr + +dist_keycodes_DATA = \ +lk pc + +DATA_FILES=$(dist_keycodes_DATA:%=$(DESTDIR)\%) + +include ..\..\xkbrules.mak diff --git a/xorg-server/xkeyboard-config/keycodes/makefile b/xorg-server/xkeyboard-config/keycodes/makefile new file mode 100644 index 000000000..f22e67a93 --- /dev/null +++ b/xorg-server/xkeyboard-config/keycodes/makefile @@ -0,0 +1,33 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +THISDIR=keycodes + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\$(THISDIR) + +SUBDIRS = digital_vndr sgi_vndr + +dist_xkbdata_keycodes_DATA = \ +aliases \ +amiga \ +ataritt \ +empty \ +evdev \ +fujitsu \ +hp \ +ibm \ +macintosh \ +sony \ +sun \ +xfree86 \ +xfree98 \ +README + +DATA_FILES=$(dist_xkbdata_keycodes_DATA:%=$(DESTDIR)\%) + +load_makefile $(SUBDIRS:%=%\makefile MAKESERVER=0 DEBUG=$(DEBUG);) + +extrastuff: $(SUBDIRS:%=%\all) + +include ..\xkbrules.mak diff --git a/xorg-server/xkeyboard-config/keycodes/sgi_vndr/makefile b/xorg-server/xkeyboard-config/keycodes/sgi_vndr/makefile new file mode 100644 index 000000000..e6c1defda --- /dev/null +++ b/xorg-server/xkeyboard-config/keycodes/sgi_vndr/makefile @@ -0,0 +1,12 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\keycodes\sgi_vndr + +dist_keycodes_DATA = \ +indigo indy iris + +DATA_FILES=$(dist_keycodes_DATA:%=$(DESTDIR)\%) + +include ..\..\xkbrules.mak diff --git a/xorg-server/xkeyboard-config/keymap/digital_vndr/makefile b/xorg-server/xkeyboard-config/keymap/digital_vndr/makefile new file mode 100644 index 000000000..09dd6f797 --- /dev/null +++ b/xorg-server/xkeyboard-config/keymap/digital_vndr/makefile @@ -0,0 +1,12 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\keymap\digital_vndr + +dist_keymap_DATA = \ +us + +DATA_FILES=$(dist_keymap_DATA:%=$(DESTDIR)\%) + +include ..\..\xkbrules.mak diff --git a/xorg-server/xkeyboard-config/keymap/makefile b/xorg-server/xkeyboard-config/keymap/makefile new file mode 100644 index 000000000..1b549a08f --- /dev/null +++ b/xorg-server/xkeyboard-config/keymap/makefile @@ -0,0 +1,22 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +THISDIR=keymap + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\$(THISDIR) + +SUBDIRS = digital_vndr sgi_vndr sun_vndr + +dist_xkbdata_keymap_DATA = \ +amiga ataritt macintosh \ +sony xfree86 xfree98 \ +README + +DATA_FILES=$(dist_xkbdata_keymap_DATA:%=$(DESTDIR)\%) + +load_makefile $(SUBDIRS:%=%\makefile MAKESERVER=0 DEBUG=$(DEBUG);) + +extrastuff: $(SUBDIRS:%=%\all) + +include ..\xkbrules.mak diff --git a/xorg-server/xkeyboard-config/keymap/sgi_vndr/makefile b/xorg-server/xkeyboard-config/keymap/sgi_vndr/makefile new file mode 100644 index 000000000..d2cb6083e --- /dev/null +++ b/xorg-server/xkeyboard-config/keymap/sgi_vndr/makefile @@ -0,0 +1,20 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\keymap\sgi_vndr + +dist_keymap_DATA = \ +be bg ca \ +ch cz de \ +dk dvorak \ +es fi \ +fr gb \ +hu it jp \ +no pl pt \ +ru se sk \ +th us + +DATA_FILES=$(dist_keymap_DATA:%=$(DESTDIR)\%) + +include ..\..\xkbrules.mak diff --git a/xorg-server/xkeyboard-config/keymap/sun_vndr/all b/xorg-server/xkeyboard-config/keymap/sun_vndr/all.in index 71a1813eb..8415fe8ab 100644 --- a/xorg-server/xkeyboard-config/keymap/sun_vndr/all +++ b/xorg-server/xkeyboard-config/keymap/sun_vndr/all.in @@ -1,1091 +1,1091 @@ -// x86 KEYBOARDS
-//
-// Generally, x86 keyboards fall into either pc101 (101-key) or pc102
-// (102-key European) categories. Symbol tables are typically formed by
-// augmenting sun/us(pc101) or sun/us(pc102) with the "extra" symbols
-// from the type5 definition. Geometries and keycodes for many of
-// these fall under sun(x86) or sun(x86tuv).
-//
-// USB KEYBOARDS
-//
-// Only the keycodes (scancodes) change in the Universal Serial Bus
-// keyboard definitions. Symbols are kept the same as in the type5
-// case. The USB HID spec is confusing on this point, but the
-// scancodes described in it relate to physical keys, not symbols, as
-// it might lead one to believe.
-//
-// HOBO KEYBOARDS
-//
-// Hobo keyboards are derived from type5 keyboards, which in turn,
-// are all derived from the type5 US keyboard. Use the
-// appropriate set of keycodes and geometry (either type5hobo or
-// type5tuvhobo) and select the symbol set sun/us(type5hobo) to
-// replace sun/us(type5). For example, Sweden5_Hobo:
-//
-// xkb_keymap "Sweden5_Hobo" {
-// xkb_keycodes { include "sun(type5tuvhobo)" };
-// xkb_types { include "default" };
-// xkb_compatibility { include "default" };
-// xkb_symbols { include "sun/us(type5hobo)+sun/se(type5)"};
-// xkb_geometry { include "sun(type5tuvhobo)" };
-// };
-//
-// Doing it this way allows all the symbol changes for a particular
-// type5 keyboard to hold for a Hobo keyboard; both keyboards, in
-// this case, would use sun/se(type5) to augment the symbols in the
-// US keboard definition.
-
-xkb_keymap "Belgian6" {
- xkb_keycodes { include "sun(type6tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+be" };
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Belgian6_usb" {
- xkb_keycodes { include "sun(type6tuv_usb)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+be" };
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Canada4" {
- xkb_keycodes { include "sun(type4_ca)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/ca(type4)" };
- xkb_geometry { include "sun(type4_ca)" };
-};
-
-xkb_keymap "Canada_Fr5" {
- xkb_keycodes { include "sun(type5tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/ca(type5)"};
- xkb_geometry { include "sun(type5tuv)" };
-};
-
-xkb_keymap "Canada_Fr5_Hobo" {
- xkb_keycodes { include "sun(type5tuvhobo)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5hobo)+sun/ca(type5)"};
- xkb_geometry { include "sun(type5tuvhobo)" };
-};
-
-xkb_keymap "Canada_Fr5_TBITS5" {
- xkb_keycodes { include "sun(type5tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/ca(type5tbits5)"};
- xkb_geometry { include "sun(type5tuv)" };
-};
-
-xkb_keymap "Canada_Fr_x86" {
- xkb_keycodes { include "sun(x86ca)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(pc101)+sun/ca(x86)"};
- xkb_geometry { include "sun(x86ca)" };
-};
-
-xkb_keymap "Switzer_Fr4" {
- xkb_keycodes { include "sun(type4tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/sw(type4fr)" };
- xkb_geometry { include "sun(type4tuv)" };
-};
-
-xkb_keymap "Switzer_Fr5" {
- xkb_keycodes { include "sun(type5tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/sw(type5fr)" };
- xkb_geometry { include "sun(type5tuv)" };
-};
-
-xkb_keymap "Switzer_Fr5_Hobo" {
- xkb_keycodes { include "sun(type5tuvhobo)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5hobo)+sun/sw(type5fr)"};
- xkb_geometry { include "sun(type5tuvhobo)" };
-};
-
-xkb_keymap "Switzer_Fr6" {
- xkb_keycodes { include "sun(type6tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/sw(type5fr)"};
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Switzer_Fr6_usb" {
- xkb_keycodes { include "sun(type6tuv_usb)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/sw(type5fr)"};
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Switzer_Fr_x86" {
- xkb_keycodes { include "sun(x86tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(pc102)+sun/sw(type5fr)"};
- xkb_geometry { include "sun(x86tuv)" };
-};
-
-xkb_keymap "Switzer_Ge4" {
- xkb_keycodes { include "sun(type4tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/sw(type4de)" };
- xkb_geometry { include "sun(type4tuv)" };
-};
-
-xkb_keymap "Switzer_Ge5" {
- xkb_keycodes { include "sun(type5tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/sw(type5de)"};
- xkb_geometry { include "sun(type5tuv)" };
-};
-
-xkb_keymap "Switzer_Ge5_Hobo" {
- xkb_keycodes { include "sun(type5tuvhobo)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5hobo)+sun/sw(type5de)"};
- xkb_geometry { include "sun(type5tuvhobo)" };
-};
-
-xkb_keymap "Switzer_Ge6" {
- xkb_keycodes { include "sun(type6tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/sw(type5de)"};
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Switzer_Ge6_usb" {
- xkb_keycodes { include "sun(type6tuv_usb)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/sw(type5de)"};
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Switzer_Ge_x86" {
- xkb_keycodes { include "sun(x86tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(pc102)+sun/sw(type5de)"};
- xkb_geometry { include "sun(x86tuv)" };
-};
-
-xkb_keymap "Czech5" {
- xkb_keycodes { include "sun(type5tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/cz(type5)" };
- xkb_geometry { include "sun(type5tuv)" };
-};
-
-
-xkb_keymap "Germany4" {
- xkb_keycodes { include "sun(type4tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/de(type4)" };
- xkb_geometry { include "sun(type4tuv)" };
-};
-
-xkb_keymap "Germany5" {
- xkb_keycodes { include "sun(type5tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+de" };
- xkb_geometry { include "sun(type5tuv)" };
-};
-
-xkb_keymap "Germany5_Hobo" {
- xkb_keycodes { include "sun(type5tuvhobo)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5hobo)+de"};
- xkb_geometry { include "sun(type5tuvhobo)" };
-};
-
-xkb_keymap "Germany6" {
- xkb_keycodes { include "sun(type6tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+de" };
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Germany6_usb" {
- xkb_keycodes { include "sun(type6tuv_usb)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+de" };
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Germany_x86" {
- xkb_keycodes { include "sun(x86tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(pc102)+de"};
- xkb_geometry { include "sun(x86tuv)" };
-};
-
-xkb_keymap "Denmark4" {
- xkb_keycodes { include "sun(type4tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/dk(type4)" };
- xkb_geometry { include "sun(type4tuv)" };
-};
-
-xkb_keymap "Denmark5" {
- xkb_keycodes { include "sun(type5tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/dk(type5)" };
- xkb_geometry { include "sun(type5tuv)" };
-};
-
-xkb_keymap "Denmark5_Hobo" {
- xkb_keycodes { include "sun(type5tuvhobo)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5hobo)+sun/dk(type5)" };
- xkb_geometry { include "sun(type5tuvhobo)" };
-};
-
-xkb_keymap "Denmark6" {
- xkb_keycodes { include "sun(type6tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/dk(type5)" };
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Denmark6_usb" {
- xkb_keycodes { include "sun(type6tuv_usb)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/dk(type5)" };
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Denmark_x86" {
- xkb_keycodes { include "sun(x86tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(pc102)+sun/dk(type5)" };
- xkb_geometry { include "sun(x86tuv)" };
-};
-
-xkb_keymap "SpainLatAm4" {
- xkb_keycodes { include "sun(type4tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/es(type4)" };
- xkb_geometry { include "sun(type4tuv)" };
-};
-
-xkb_keymap "Spain5" {
- xkb_keycodes { include "sun(type5tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/es(type5)" };
- xkb_geometry { include "sun(type5tuv)" };
-};
-
-xkb_keymap "Spain5_Hobo" {
- xkb_keycodes { include "sun(type5tuvhobo)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5hobo)+sun/es(type5)"};
- xkb_geometry { include "sun(type5tuvhobo)" };
-};
-
-xkb_keymap "Spain6" {
- xkb_keycodes { include "sun(type6tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/es(type5)" };
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Spain6_usb" {
- xkb_keycodes { include "sun(type6tuv_usb)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/es(type5)" };
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Spain_x86" {
- xkb_keycodes { include "sun(x86tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(pc102)+sun/es(type5)" };
- xkb_geometry { include "sun(x86tuv)" };
-};
-
-
-xkb_keymap "Finnish6" {
- xkb_keycodes { include "sun(type6tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/fi"};
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Finnish6_usb" {
- xkb_keycodes { include "sun(type6tuv_usb)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/fi"};
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-
-xkb_keymap "FranceBelg4" {
- xkb_keycodes { include "sun(type4tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/fr(type4)" };
- xkb_geometry { include "sun(type4tuv)" };
-};
-
-xkb_keymap "France5" {
- xkb_keycodes { include "sun(type5tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/fr(type5)" };
- xkb_geometry { include "sun(type5tuv)" };
-};
-
-xkb_keymap "France5_Hobo" {
- xkb_keycodes { include "sun(type5tuvhobo)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5hobo)+sun/fr(type5)"};
- xkb_geometry { include "sun(type5tuvhobo)" };
-};
-
-xkb_keymap "France6" {
- xkb_keycodes { include "sun(type6tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/fr(type5)" };
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "France6_usb" {
- xkb_keycodes { include "sun(type6tuv_usb)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/fr(type5)" };
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "France_x86" {
- xkb_keycodes { include "sun(x86tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(pc102)+sun/fr(type5)" };
- xkb_geometry { include "sun(x86tuv)" };
-};
-
-xkb_keymap "Greece5" {
- xkb_keycodes { include "sun(type5tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/gr(type5)" };
- xkb_geometry { include "sun(type5tuv)" };
-};
-
-
-xkb_keymap "Hungary5" {
- xkb_keycodes { include "sun(type5tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5basic)+sun/hu(type5)" };
- xkb_geometry { include "sun(type5tuv)" };
-};
-
-
-xkb_keymap "Italy4" {
- xkb_keycodes { include "sun(type4tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/it(type4)" };
- xkb_geometry { include "sun(type4tuv)" };
-};
-
-xkb_keymap "Italy5" {
- xkb_keycodes { include "sun(type5tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/it(type5)" };
- xkb_geometry { include "sun(type5tuv)" };
-};
-
-xkb_keymap "Italy5_Hobo" {
- xkb_keycodes { include "sun(type5tuvhobo)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5hobo)+sun/it(type5)"};
- xkb_geometry { include "sun(type5tuvhobo)" };
-};
-
-xkb_keymap "Italy6" {
- xkb_keycodes { include "sun(type6tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/it(type5)" };
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Italy6_usb" {
- xkb_keycodes { include "sun(type6tuv_usb)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/it(type5)" };
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Italy_x86" {
- xkb_keycodes { include "sun(x86tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(pc102)+sun/it(type5)" };
- xkb_geometry { include "sun(x86tuv)" };
-};
-
-xkb_keymap "Japan4" {
- xkb_keycodes { include "sun(type4_jp)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/jp(type4)" };
- xkb_geometry { include "sun(type4jp)" };
-};
-
-xkb_keymap "Japan5" {
- xkb_keycodes { include "sun(type5_jp)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/jp(type5)" };
- xkb_geometry { include "sun(type5jp)" };
-};
-
-xkb_keymap "Japan5_Hobo" {
- xkb_keycodes { include "sun(type5_jphobo)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/jp(type5hobo)" };
- xkb_geometry { include "sun(type5jphobo)" };
-};
-
-xkb_keymap "Japan6" {
- xkb_keycodes { include "sun(type6_jp)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default+japan(kana_lock)" };
- xkb_symbols { include "sun/jp(type6)" };
- xkb_geometry { include "sun(type6jp)" };
-};
-
-xkb_keymap "Japan6_usb" {
- xkb_keycodes { include "sun(type6_jp_usb)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default+japan(kana_lock)" };
- xkb_symbols { include "sun/jp(type6)" };
- xkb_geometry { include "sun(type6jp)" };
-};
-
-xkb_keymap "Japan_x86" {
- xkb_keycodes { include "sun(x86jp)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/jp(x86)" };
- xkb_geometry { include "sun(x86jp)" };
-};
-
-xkb_keymap "J3100" {
- xkb_keycodes { include "sun(x86tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/jp(J3100)" };
- xkb_geometry { include "sun(x86tuv)" };
-};
-
-xkb_keymap "Japan_Muhenkan_x86" {
- xkb_keycodes { include "sun(x86jp)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/jp(Muhenkan_x86)" };
- xkb_geometry { include "sun(x86jp)" };
-};
-
-xkb_keymap "Korea4" {
- xkb_keycodes { include "sun(type4)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/ko(type4)" };
- xkb_geometry { include "sun(type4)" };
-};
-
-xkb_keymap "Korea5" {
- xkb_keycodes { include "sun(type5)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/ko(type5)" };
- xkb_geometry { include "sun(type5)" };
-};
-
-xkb_keymap "Korea5_Hobo" {
- xkb_keycodes { include "sun(type5hobo)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5hobo)+sun/ko(type5)"};
- xkb_geometry { include "sun(type5hobo)" };
-};
-
-xkb_keymap "Korea6" {
- xkb_keycodes { include "sun(type6)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/ko(type5)" };
- xkb_geometry { include "sun(type6)" };
-};
-
-xkb_keymap "Korea6_usb" {
- xkb_keycodes { include "sun(type6_usb)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/ko(type5)" };
- xkb_geometry { include "sun(type6)" };
-};
-
-xkb_keymap "Korea_x86" {
- xkb_keycodes { include "sun(x86ko)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(pc101)+sun/ko(type5)" };
- xkb_geometry { include "sun(x86ko)" };
-};
-
-xkb_keymap "Lithuania5" {
- xkb_keycodes { include "sun(type5tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5basic)+sun/lt(type5)" };
- xkb_geometry { include "sun(type5tuv)" };
-};
-
-
-xkb_keymap "Latvia5" {
- xkb_keycodes { include "sun(type5tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5basic)+sun/lv(type5)" };
- xkb_geometry { include "sun(type5tuv)" };
-};
-
-xkb_keymap "MS_US101A_x86" {
- xkb_keycodes { include "sun(MS_x86)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(pc104)" };
- xkb_geometry { include "sun(MS_x86)" };
-};
-
-xkb_keymap "Netherland4" {
- xkb_keycodes { include "sun(type4tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/nl(type4)" };
- xkb_geometry { include "sun(type4tuv)" };
-};
-
-xkb_keymap "Netherland5" {
- xkb_keycodes { include "sun(type5tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+nl" };
- xkb_geometry { include "sun(type5tuv)" };
-};
-
-xkb_keymap "Netherland5_Hobo" {
- xkb_keycodes { include "sun(type5tuvhobo)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5hobo)+nl" };
- xkb_geometry { include "sun(type5tuvhobo)" };
-};
-
-xkb_keymap "Netherland6" {
- xkb_keycodes { include "sun(type6tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+nl" };
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Netherland6_usb" {
- xkb_keycodes { include "sun(type6tuv_usb)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+nl" };
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Netherland_x86" {
- xkb_keycodes { include "sun(x86tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(pc102)+nl" };
- xkb_geometry { include "sun(x86tuv)" };
-};
-
-xkb_keymap "Norway4" {
- xkb_keycodes { include "sun(type4tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/no(type4)" };
- xkb_geometry { include "sun(type4tuv)" };
-};
-
-xkb_keymap "Norway5" {
- xkb_keycodes { include "sun(type5tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/no(type5)"};
- xkb_geometry { include "sun(type5tuv)" };
-};
-
-xkb_keymap "Norway5_Hobo" {
- xkb_keycodes { include "sun(type5tuvhobo)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5hobo)+sun/no(type5)"};
- xkb_geometry { include "sun(type5tuvhobo)" };
-};
-
-xkb_keymap "Norway6" {
- xkb_keycodes { include "sun(type6tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/no(type5)" };
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Norway6_usb" {
- xkb_keycodes { include "sun(type6tuv_usb)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/no(type5)" };
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Norway_x86" {
- xkb_keycodes { include "sun(x86tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(pc102)+sun/no(type5)" };
- xkb_geometry { include "sun(x86tuv)" };
-};
-
-xkb_keymap "Poland5" {
- xkb_keycodes { include "sun(type5tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/pl" };
- xkb_geometry { include "sun(type5tuv)" };
-};
-
-xkb_keymap "Portugal4" {
- xkb_keycodes { include "sun(type4tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/pt(type4)" };
- xkb_geometry { include "sun(type4tuv)" };
-};
-
-xkb_keymap "Portugal5" {
- xkb_keycodes { include "sun(type5tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/pt(type5)" };
- xkb_geometry { include "sun(type5tuv)" };
-};
-
-xkb_keymap "Portugal5_Hobo" {
- xkb_keycodes { include "sun(type5tuvhobo)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5hobo)+sun/pt(type5)"};
- xkb_geometry { include "sun(type5tuvhobo)" };
-};
-
-xkb_keymap "Portugal6" {
- xkb_keycodes { include "sun(type6tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/pt(type5)" };
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Portugal6_usb" {
- xkb_keycodes { include "sun(type6tuv_usb)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/pt(type5)" };
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Portugal_x86" {
- xkb_keycodes { include "sun(x86tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(pc102)+sun/pt(type5)" };
- xkb_geometry { include "sun(x86tuv)" };
-};
-
-// xkb_keymap "Russia4" {
-// xkb_keycodes { include "sun(type4)" };
-// xkb_types { include "default" };
-// xkb_compatibility { include "default" };
-// xkb_symbols { include "sun/ru" };
-// xkb_geometry { include "sun(type4)" };
-// };
-
-xkb_keymap "Russia5" {
- xkb_keycodes { include "sun(type5tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/ru"};
- xkb_geometry { include "sun(type5tuv)" };
-};
-
-xkb_keymap "Russia6" {
- xkb_keycodes { include "sun(type6tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/ru"};
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Russia6_usb" {
- xkb_keycodes { include "sun(type6tuv_usb)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/ru"};
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "SwedenFin4" {
- xkb_keycodes { include "sun(type4tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/se(type4)" };
- xkb_geometry { include "sun(type4tuv)" };
-};
-
-xkb_keymap "Sweden5" {
- xkb_keycodes { include "sun(type5tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/se(type5)"};
- xkb_geometry { include "sun(type5tuv)" };
-};
-
-xkb_keymap "Sweden5_Hobo" {
- xkb_keycodes { include "sun(type5tuvhobo)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5hobo)+sun/se(type5)"};
- xkb_geometry { include "sun(type5tuvhobo)" };
-};
-
-xkb_keymap "Sweden6" {
- xkb_keycodes { include "sun(type6tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/se(type5)" };
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Sweden6_usb" {
- xkb_keycodes { include "sun(type6tuv_usb)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/se(type5)" };
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Sweden_x86" {
- xkb_keycodes { include "sun(x86tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(pc102)+sun/se(type5)" };
- xkb_geometry { include "sun(x86tuv)" };
-};
-
-xkb_keymap "Turkey5" {
- xkb_keycodes { include "sun(type5tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/tr" };
- xkb_geometry { include "sun(type5tuv)" };
-};
-
-xkb_keymap "Turkey6" {
- xkb_keycodes { include "sun(type6tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/tr"};
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "Turkey6_usb" {
- xkb_keycodes { include "sun(type6tuv_usb)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/tr"};
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "TurkeyQ6" {
- xkb_keycodes { include "sun(type6tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/tr(type6Q)"};
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "TurkeyQ6_usb" {
- xkb_keycodes { include "sun(type6tuv_usb)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/tr(type6Q)"};
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "TurkeyF6" {
- xkb_keycodes { include "sun(type6tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/tr(type6F)"};
- xkb_geometry { include "sun(type6)" };
-};
-
-xkb_keymap "TurkeyF6_usb" {
- xkb_keycodes { include "sun(type6tuv_usb)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/tr(type6F)"};
- xkb_geometry { include "sun(type6)" };
-};
-
-xkb_keymap "Taiwan4" {
- xkb_keycodes { include "sun(type4)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/tw(type4)" };
- xkb_geometry { include "sun(type4)" };
-};
-
-xkb_keymap "Taiwan5" {
- xkb_keycodes { include "sun(type5)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/tw(type5)" };
- xkb_geometry { include "sun(type5)" };
-};
-
-xkb_keymap "Taiwan5_Hobo" {
- xkb_keycodes { include "sun(type5hobo)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5hobo)+sun/tw(type5)" };
- xkb_geometry { include "sun(type5hobo)" };
-};
-
-xkb_keymap "Taiwan6" {
- xkb_keycodes { include "sun(type6)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/tw(type5)" };
- xkb_geometry { include "sun(type6)" };
-};
-
-xkb_keymap "Taiwan6_usb" {
- xkb_keycodes { include "sun(type6_usb)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/tw(type5)" };
- xkb_geometry { include "sun(type6)" };
-};
-
-xkb_keymap "Taiwan_x86" {
- xkb_keycodes { include "sun(x86)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "us(pc101)" };
- xkb_geometry { include "sun(x86)" };
-};
-
-xkb_keymap "UK4" {
- xkb_keycodes { include "sun(type4)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/gb(type4)" };
- xkb_geometry { include "sun(type4)" };
-};
-
-xkb_keymap "UK5" {
- xkb_keycodes { include "sun(type5tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)+sun/gb(type5)" };
- xkb_geometry { include "sun(type5tuv)" };
-};
-
-xkb_keymap "UK5_Hobo" {
- xkb_keycodes { include "sun(type5tuvhobo)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5hobo)+sun/gb(type5)" };
- xkb_geometry { include "sun(type5tuvhobo)" };
-};
-
-xkb_keymap "UK6" {
- xkb_keycodes { include "sun(type6tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type6)+sun/gb(type5)" };
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "UK6_usb" {
- xkb_keycodes { include "sun(type6tuv_usb)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type6)+sun/gb(type5)" };
- xkb_geometry { include "sun(type6tuv)" };
-};
-
-xkb_keymap "UK_x86" {
- xkb_keycodes { include "sun(x86tuv)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(pc102)+gb" };
- xkb_geometry { include "sun(x86tuv)" };
-};
-
-xkb_keymap "US101A_PC" {
- xkb_keycodes { include "sun(type5x86)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(pc101)+sun/us(pc101currency)"};
- xkb_geometry { include "sun(x86)" };
-};
-
-xkb_keymap "US101A_Sun" {
- xkb_keycodes { include "sun(type5x86)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(pc101)+sun/us(US101A_Sun)" };
- xkb_geometry { include "sun(x86)" };
-};
-
-xkb_keymap "US101A_x86" {
- xkb_keycodes { include "sun(x86)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "us(pc101)" };
- xkb_geometry { include "sun(x86)" };
-};
-
-xkb_keymap "US4" {
- xkb_keycodes { include "sun(type4)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type4)" };
- xkb_geometry { include "sun(type4)" };
-};
-
-xkb_keymap "US5" {
- xkb_keycodes { include "sun(type5)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)" };
- xkb_geometry { include "sun(type5)" };
-};
-
-xkb_keymap "US5_Hobo" {
- xkb_keycodes { include "sun(type5hobo)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5hobo)" };
- xkb_geometry { include "sun(type5hobo)" };
-};
-
-xkb_keymap "US_UNIX5" {
- xkb_keycodes { include "sun(type5)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5)" };
- xkb_geometry { include "sun(type5unix)" };
-};
-
-xkb_keymap "US_UNIX5_Hobo" {
- // Same as US5_Hobo
- xkb_keycodes { include "sun(type5hobo)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type5hobo)" };
- xkb_geometry { include "sun(type5hobo)" };
-};
-
-xkb_keymap "US6" {
- xkb_keycodes { include "sun(type6)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type6)" };
- xkb_geometry { include "sun(type6)" };
-};
-
-xkb_keymap "US6_usb" {
- xkb_keycodes { include "sun(type6_usb)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type6)" };
- xkb_geometry { include "sun(type6)" };
-};
-
-xkb_keymap "US_UNIX6" {
- xkb_keycodes { include "sun(type6)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type6)" };
- xkb_geometry { include "sun(type6unix)" };
-};
-
-xkb_keymap "US_UNIX6_usb" {
- xkb_keycodes { include "sun(type6_usb)" };
- xkb_types { include "default" };
- xkb_compatibility { include "default" };
- xkb_symbols { include "sun/us(type6)" };
- xkb_geometry { include "sun(type6unix)" };
-};
+// x86 KEYBOARDS +// +// Generally, x86 keyboards fall into either pc101 (101-key) or pc102 +// (102-key European) categories. Symbol tables are typically formed by +// augmenting sun/us(pc101) or sun/us(pc102) with the "extra" symbols +// from the type5 definition. Geometries and keycodes for many of +// these fall under sun(x86) or sun(x86tuv). +// +// USB KEYBOARDS +// +// Only the keycodes (scancodes) change in the Universal Serial Bus +// keyboard definitions. Symbols are kept the same as in the type5 +// case. The USB HID spec is confusing on this point, but the +// scancodes described in it relate to physical keys, not symbols, as +// it might lead one to believe. +// +// HOBO KEYBOARDS +// +// Hobo keyboards are derived from type5 keyboards, which in turn, +// are all derived from the type5 US keyboard. Use the +// appropriate set of keycodes and geometry (either type5hobo or +// type5tuvhobo) and select the symbol set sun/us(type5hobo) to +// replace sun/us(type5). For example, Sweden5_Hobo: +// +// xkb_keymap "Sweden5_Hobo" { +// xkb_keycodes { include "sun(type5tuvhobo)" }; +// xkb_types { include "default" }; +// xkb_compatibility { include "default" }; +// xkb_symbols { include "sun/us(type5hobo)+sun/se(type5)"}; +// xkb_geometry { include "sun(type5tuvhobo)" }; +// }; +// +// Doing it this way allows all the symbol changes for a particular +// type5 keyboard to hold for a Hobo keyboard; both keyboards, in +// this case, would use sun/se(type5) to augment the symbols in the +// US keboard definition. + +xkb_keymap "Belgian6" { + xkb_keycodes { include "sun(type6tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+be" }; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Belgian6_usb" { + xkb_keycodes { include "sun(type6tuv_usb)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+be" }; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Canada4" { + xkb_keycodes { include "sun(type4_ca)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/ca(type4)" }; + xkb_geometry { include "sun(type4_ca)" }; +}; + +xkb_keymap "Canada_Fr5" { + xkb_keycodes { include "sun(type5tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/ca(type5)"}; + xkb_geometry { include "sun(type5tuv)" }; +}; + +xkb_keymap "Canada_Fr5_Hobo" { + xkb_keycodes { include "sun(type5tuvhobo)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5hobo)+sun/ca(type5)"}; + xkb_geometry { include "sun(type5tuvhobo)" }; +}; + +xkb_keymap "Canada_Fr5_TBITS5" { + xkb_keycodes { include "sun(type5tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/ca(type5tbits5)"}; + xkb_geometry { include "sun(type5tuv)" }; +}; + +xkb_keymap "Canada_Fr_x86" { + xkb_keycodes { include "sun(x86ca)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(pc101)+sun/ca(x86)"}; + xkb_geometry { include "sun(x86ca)" }; +}; + +xkb_keymap "Switzer_Fr4" { + xkb_keycodes { include "sun(type4tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/sw(type4fr)" }; + xkb_geometry { include "sun(type4tuv)" }; +}; + +xkb_keymap "Switzer_Fr5" { + xkb_keycodes { include "sun(type5tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/sw(type5fr)" }; + xkb_geometry { include "sun(type5tuv)" }; +}; + +xkb_keymap "Switzer_Fr5_Hobo" { + xkb_keycodes { include "sun(type5tuvhobo)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5hobo)+sun/sw(type5fr)"}; + xkb_geometry { include "sun(type5tuvhobo)" }; +}; + +xkb_keymap "Switzer_Fr6" { + xkb_keycodes { include "sun(type6tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/sw(type5fr)"}; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Switzer_Fr6_usb" { + xkb_keycodes { include "sun(type6tuv_usb)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/sw(type5fr)"}; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Switzer_Fr_x86" { + xkb_keycodes { include "sun(x86tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(pc102)+sun/sw(type5fr)"}; + xkb_geometry { include "sun(x86tuv)" }; +}; + +xkb_keymap "Switzer_Ge4" { + xkb_keycodes { include "sun(type4tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/sw(type4de)" }; + xkb_geometry { include "sun(type4tuv)" }; +}; + +xkb_keymap "Switzer_Ge5" { + xkb_keycodes { include "sun(type5tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/sw(type5de)"}; + xkb_geometry { include "sun(type5tuv)" }; +}; + +xkb_keymap "Switzer_Ge5_Hobo" { + xkb_keycodes { include "sun(type5tuvhobo)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5hobo)+sun/sw(type5de)"}; + xkb_geometry { include "sun(type5tuvhobo)" }; +}; + +xkb_keymap "Switzer_Ge6" { + xkb_keycodes { include "sun(type6tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/sw(type5de)"}; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Switzer_Ge6_usb" { + xkb_keycodes { include "sun(type6tuv_usb)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/sw(type5de)"}; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Switzer_Ge_x86" { + xkb_keycodes { include "sun(x86tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(pc102)+sun/sw(type5de)"}; + xkb_geometry { include "sun(x86tuv)" }; +}; + +xkb_keymap "Czech5" { + xkb_keycodes { include "sun(type5tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/cz(type5)" }; + xkb_geometry { include "sun(type5tuv)" }; +}; + + +xkb_keymap "Germany4" { + xkb_keycodes { include "sun(type4tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/de(type4)" }; + xkb_geometry { include "sun(type4tuv)" }; +}; + +xkb_keymap "Germany5" { + xkb_keycodes { include "sun(type5tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+de" }; + xkb_geometry { include "sun(type5tuv)" }; +}; + +xkb_keymap "Germany5_Hobo" { + xkb_keycodes { include "sun(type5tuvhobo)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5hobo)+de"}; + xkb_geometry { include "sun(type5tuvhobo)" }; +}; + +xkb_keymap "Germany6" { + xkb_keycodes { include "sun(type6tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+de" }; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Germany6_usb" { + xkb_keycodes { include "sun(type6tuv_usb)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+de" }; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Germany_x86" { + xkb_keycodes { include "sun(x86tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(pc102)+de"}; + xkb_geometry { include "sun(x86tuv)" }; +}; + +xkb_keymap "Denmark4" { + xkb_keycodes { include "sun(type4tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/dk(type4)" }; + xkb_geometry { include "sun(type4tuv)" }; +}; + +xkb_keymap "Denmark5" { + xkb_keycodes { include "sun(type5tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/dk(type5)" }; + xkb_geometry { include "sun(type5tuv)" }; +}; + +xkb_keymap "Denmark5_Hobo" { + xkb_keycodes { include "sun(type5tuvhobo)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5hobo)+sun/dk(type5)" }; + xkb_geometry { include "sun(type5tuvhobo)" }; +}; + +xkb_keymap "Denmark6" { + xkb_keycodes { include "sun(type6tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/dk(type5)" }; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Denmark6_usb" { + xkb_keycodes { include "sun(type6tuv_usb)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/dk(type5)" }; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Denmark_x86" { + xkb_keycodes { include "sun(x86tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(pc102)+sun/dk(type5)" }; + xkb_geometry { include "sun(x86tuv)" }; +}; + +xkb_keymap "SpainLatAm4" { + xkb_keycodes { include "sun(type4tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/es(type4)" }; + xkb_geometry { include "sun(type4tuv)" }; +}; + +xkb_keymap "Spain5" { + xkb_keycodes { include "sun(type5tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/es(type5)" }; + xkb_geometry { include "sun(type5tuv)" }; +}; + +xkb_keymap "Spain5_Hobo" { + xkb_keycodes { include "sun(type5tuvhobo)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5hobo)+sun/es(type5)"}; + xkb_geometry { include "sun(type5tuvhobo)" }; +}; + +xkb_keymap "Spain6" { + xkb_keycodes { include "sun(type6tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/es(type5)" }; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Spain6_usb" { + xkb_keycodes { include "sun(type6tuv_usb)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/es(type5)" }; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Spain_x86" { + xkb_keycodes { include "sun(x86tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(pc102)+sun/es(type5)" }; + xkb_geometry { include "sun(x86tuv)" }; +}; + + +xkb_keymap "Finnish6" { + xkb_keycodes { include "sun(type6tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/fi"}; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Finnish6_usb" { + xkb_keycodes { include "sun(type6tuv_usb)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/fi"}; + xkb_geometry { include "sun(type6tuv)" }; +}; + + +xkb_keymap "FranceBelg4" { + xkb_keycodes { include "sun(type4tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/fr(type4)" }; + xkb_geometry { include "sun(type4tuv)" }; +}; + +xkb_keymap "France5" { + xkb_keycodes { include "sun(type5tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/fr(type5)" }; + xkb_geometry { include "sun(type5tuv)" }; +}; + +xkb_keymap "France5_Hobo" { + xkb_keycodes { include "sun(type5tuvhobo)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5hobo)+sun/fr(type5)"}; + xkb_geometry { include "sun(type5tuvhobo)" }; +}; + +xkb_keymap "France6" { + xkb_keycodes { include "sun(type6tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/fr(type5)" }; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "France6_usb" { + xkb_keycodes { include "sun(type6tuv_usb)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/fr(type5)" }; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "France_x86" { + xkb_keycodes { include "sun(x86tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(pc102)+sun/fr(type5)" }; + xkb_geometry { include "sun(x86tuv)" }; +}; + +xkb_keymap "Greece5" { + xkb_keycodes { include "sun(type5tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/gr(type5)" }; + xkb_geometry { include "sun(type5tuv)" }; +}; + + +xkb_keymap "Hungary5" { + xkb_keycodes { include "sun(type5tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5basic)+sun/hu(type5)" }; + xkb_geometry { include "sun(type5tuv)" }; +}; + + +xkb_keymap "Italy4" { + xkb_keycodes { include "sun(type4tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/it(type4)" }; + xkb_geometry { include "sun(type4tuv)" }; +}; + +xkb_keymap "Italy5" { + xkb_keycodes { include "sun(type5tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/it(type5)" }; + xkb_geometry { include "sun(type5tuv)" }; +}; + +xkb_keymap "Italy5_Hobo" { + xkb_keycodes { include "sun(type5tuvhobo)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5hobo)+sun/it(type5)"}; + xkb_geometry { include "sun(type5tuvhobo)" }; +}; + +xkb_keymap "Italy6" { + xkb_keycodes { include "sun(type6tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/it(type5)" }; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Italy6_usb" { + xkb_keycodes { include "sun(type6tuv_usb)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/it(type5)" }; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Italy_x86" { + xkb_keycodes { include "sun(x86tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(pc102)+sun/it(type5)" }; + xkb_geometry { include "sun(x86tuv)" }; +}; + +xkb_keymap "Japan4" { + xkb_keycodes { include "sun(type4_jp)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/jp(type4)" }; + xkb_geometry { include "sun(type4jp)" }; +}; + +xkb_keymap "Japan5" { + xkb_keycodes { include "sun(type5_jp)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/jp(type5)" }; + xkb_geometry { include "sun(type5jp)" }; +}; + +xkb_keymap "Japan5_Hobo" { + xkb_keycodes { include "sun(type5_jphobo)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/jp(type5hobo)" }; + xkb_geometry { include "sun(type5jphobo)" }; +}; + +xkb_keymap "Japan6" { + xkb_keycodes { include "sun(type6_jp)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default+japan(kana_lock)" }; + xkb_symbols { include "sun/jp(type6)" }; + xkb_geometry { include "sun(type6jp)" }; +}; + +xkb_keymap "Japan6_usb" { + xkb_keycodes { include "sun(type6_jp_usb)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default+japan(kana_lock)" }; + xkb_symbols { include "sun/jp(type6)" }; + xkb_geometry { include "sun(type6jp)" }; +}; + +xkb_keymap "Japan_x86" { + xkb_keycodes { include "sun(x86jp)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/jp(x86)" }; + xkb_geometry { include "sun(x86jp)" }; +}; + +xkb_keymap "J3100" { + xkb_keycodes { include "sun(x86tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/jp(J3100)" }; + xkb_geometry { include "sun(x86tuv)" }; +}; + +xkb_keymap "Japan_Muhenkan_x86" { + xkb_keycodes { include "sun(x86jp)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/jp(Muhenkan_x86)" }; + xkb_geometry { include "sun(x86jp)" }; +}; + +xkb_keymap "Korea4" { + xkb_keycodes { include "sun(type4)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/ko(type4)" }; + xkb_geometry { include "sun(type4)" }; +}; + +xkb_keymap "Korea5" { + xkb_keycodes { include "sun(type5)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/ko(type5)" }; + xkb_geometry { include "sun(type5)" }; +}; + +xkb_keymap "Korea5_Hobo" { + xkb_keycodes { include "sun(type5hobo)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5hobo)+sun/ko(type5)"}; + xkb_geometry { include "sun(type5hobo)" }; +}; + +xkb_keymap "Korea6" { + xkb_keycodes { include "sun(type6)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/ko(type5)" }; + xkb_geometry { include "sun(type6)" }; +}; + +xkb_keymap "Korea6_usb" { + xkb_keycodes { include "sun(type6_usb)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/ko(type5)" }; + xkb_geometry { include "sun(type6)" }; +}; + +xkb_keymap "Korea_x86" { + xkb_keycodes { include "sun(x86ko)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(pc101)+sun/ko(type5)" }; + xkb_geometry { include "sun(x86ko)" }; +}; + +xkb_keymap "Lithuania5" { + xkb_keycodes { include "sun(type5tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5basic)+sun/lt(type5)" }; + xkb_geometry { include "sun(type5tuv)" }; +}; + + +xkb_keymap "Latvia5" { + xkb_keycodes { include "sun(type5tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5basic)+sun/lv(type5)" }; + xkb_geometry { include "sun(type5tuv)" }; +}; + +xkb_keymap "MS_US101A_x86" { + xkb_keycodes { include "sun(MS_x86)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(pc104)" }; + xkb_geometry { include "sun(MS_x86)" }; +}; + +xkb_keymap "Netherland4" { + xkb_keycodes { include "sun(type4tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/nl(type4)" }; + xkb_geometry { include "sun(type4tuv)" }; +}; + +xkb_keymap "Netherland5" { + xkb_keycodes { include "sun(type5tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+nl" }; + xkb_geometry { include "sun(type5tuv)" }; +}; + +xkb_keymap "Netherland5_Hobo" { + xkb_keycodes { include "sun(type5tuvhobo)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5hobo)+nl" }; + xkb_geometry { include "sun(type5tuvhobo)" }; +}; + +xkb_keymap "Netherland6" { + xkb_keycodes { include "sun(type6tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+nl" }; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Netherland6_usb" { + xkb_keycodes { include "sun(type6tuv_usb)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+nl" }; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Netherland_x86" { + xkb_keycodes { include "sun(x86tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(pc102)+nl" }; + xkb_geometry { include "sun(x86tuv)" }; +}; + +xkb_keymap "Norway4" { + xkb_keycodes { include "sun(type4tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/no(type4)" }; + xkb_geometry { include "sun(type4tuv)" }; +}; + +xkb_keymap "Norway5" { + xkb_keycodes { include "sun(type5tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/no(type5)"}; + xkb_geometry { include "sun(type5tuv)" }; +}; + +xkb_keymap "Norway5_Hobo" { + xkb_keycodes { include "sun(type5tuvhobo)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5hobo)+sun/no(type5)"}; + xkb_geometry { include "sun(type5tuvhobo)" }; +}; + +xkb_keymap "Norway6" { + xkb_keycodes { include "sun(type6tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/no(type5)" }; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Norway6_usb" { + xkb_keycodes { include "sun(type6tuv_usb)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/no(type5)" }; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Norway_x86" { + xkb_keycodes { include "sun(x86tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(pc102)+sun/no(type5)" }; + xkb_geometry { include "sun(x86tuv)" }; +}; + +xkb_keymap "Poland5" { + xkb_keycodes { include "sun(type5tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/pl" }; + xkb_geometry { include "sun(type5tuv)" }; +}; + +xkb_keymap "Portugal4" { + xkb_keycodes { include "sun(type4tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/pt(type4)" }; + xkb_geometry { include "sun(type4tuv)" }; +}; + +xkb_keymap "Portugal5" { + xkb_keycodes { include "sun(type5tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/pt(type5)" }; + xkb_geometry { include "sun(type5tuv)" }; +}; + +xkb_keymap "Portugal5_Hobo" { + xkb_keycodes { include "sun(type5tuvhobo)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5hobo)+sun/pt(type5)"}; + xkb_geometry { include "sun(type5tuvhobo)" }; +}; + +xkb_keymap "Portugal6" { + xkb_keycodes { include "sun(type6tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/pt(type5)" }; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Portugal6_usb" { + xkb_keycodes { include "sun(type6tuv_usb)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/pt(type5)" }; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Portugal_x86" { + xkb_keycodes { include "sun(x86tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(pc102)+sun/pt(type5)" }; + xkb_geometry { include "sun(x86tuv)" }; +}; + +// xkb_keymap "Russia4" { +// xkb_keycodes { include "sun(type4)" }; +// xkb_types { include "default" }; +// xkb_compatibility { include "default" }; +// xkb_symbols { include "sun/ru" }; +// xkb_geometry { include "sun(type4)" }; +// }; + +xkb_keymap "Russia5" { + xkb_keycodes { include "sun(type5tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/ru"}; + xkb_geometry { include "sun(type5tuv)" }; +}; + +xkb_keymap "Russia6" { + xkb_keycodes { include "sun(type6tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/ru"}; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Russia6_usb" { + xkb_keycodes { include "sun(type6tuv_usb)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/ru"}; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "SwedenFin4" { + xkb_keycodes { include "sun(type4tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/se(type4)" }; + xkb_geometry { include "sun(type4tuv)" }; +}; + +xkb_keymap "Sweden5" { + xkb_keycodes { include "sun(type5tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/se(type5)"}; + xkb_geometry { include "sun(type5tuv)" }; +}; + +xkb_keymap "Sweden5_Hobo" { + xkb_keycodes { include "sun(type5tuvhobo)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5hobo)+sun/se(type5)"}; + xkb_geometry { include "sun(type5tuvhobo)" }; +}; + +xkb_keymap "Sweden6" { + xkb_keycodes { include "sun(type6tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/se(type5)" }; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Sweden6_usb" { + xkb_keycodes { include "sun(type6tuv_usb)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/se(type5)" }; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Sweden_x86" { + xkb_keycodes { include "sun(x86tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(pc102)+sun/se(type5)" }; + xkb_geometry { include "sun(x86tuv)" }; +}; + +xkb_keymap "Turkey5" { + xkb_keycodes { include "sun(type5tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/tr" }; + xkb_geometry { include "sun(type5tuv)" }; +}; + +xkb_keymap "Turkey6" { + xkb_keycodes { include "sun(type6tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/tr"}; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "Turkey6_usb" { + xkb_keycodes { include "sun(type6tuv_usb)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/tr"}; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "TurkeyQ6" { + xkb_keycodes { include "sun(type6tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/tr(type6Q)"}; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "TurkeyQ6_usb" { + xkb_keycodes { include "sun(type6tuv_usb)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/tr(type6Q)"}; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "TurkeyF6" { + xkb_keycodes { include "sun(type6tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/tr(type6F)"}; + xkb_geometry { include "sun(type6)" }; +}; + +xkb_keymap "TurkeyF6_usb" { + xkb_keycodes { include "sun(type6tuv_usb)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/tr(type6F)"}; + xkb_geometry { include "sun(type6)" }; +}; + +xkb_keymap "Taiwan4" { + xkb_keycodes { include "sun(type4)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/tw(type4)" }; + xkb_geometry { include "sun(type4)" }; +}; + +xkb_keymap "Taiwan5" { + xkb_keycodes { include "sun(type5)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/tw(type5)" }; + xkb_geometry { include "sun(type5)" }; +}; + +xkb_keymap "Taiwan5_Hobo" { + xkb_keycodes { include "sun(type5hobo)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5hobo)+sun/tw(type5)" }; + xkb_geometry { include "sun(type5hobo)" }; +}; + +xkb_keymap "Taiwan6" { + xkb_keycodes { include "sun(type6)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/tw(type5)" }; + xkb_geometry { include "sun(type6)" }; +}; + +xkb_keymap "Taiwan6_usb" { + xkb_keycodes { include "sun(type6_usb)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/tw(type5)" }; + xkb_geometry { include "sun(type6)" }; +}; + +xkb_keymap "Taiwan_x86" { + xkb_keycodes { include "sun(x86)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "us(pc101)" }; + xkb_geometry { include "sun(x86)" }; +}; + +xkb_keymap "UK4" { + xkb_keycodes { include "sun(type4)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/gb(type4)" }; + xkb_geometry { include "sun(type4)" }; +}; + +xkb_keymap "UK5" { + xkb_keycodes { include "sun(type5tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)+sun/gb(type5)" }; + xkb_geometry { include "sun(type5tuv)" }; +}; + +xkb_keymap "UK5_Hobo" { + xkb_keycodes { include "sun(type5tuvhobo)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5hobo)+sun/gb(type5)" }; + xkb_geometry { include "sun(type5tuvhobo)" }; +}; + +xkb_keymap "UK6" { + xkb_keycodes { include "sun(type6tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type6)+sun/gb(type5)" }; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "UK6_usb" { + xkb_keycodes { include "sun(type6tuv_usb)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type6)+sun/gb(type5)" }; + xkb_geometry { include "sun(type6tuv)" }; +}; + +xkb_keymap "UK_x86" { + xkb_keycodes { include "sun(x86tuv)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(pc102)+gb" }; + xkb_geometry { include "sun(x86tuv)" }; +}; + +xkb_keymap "US101A_PC" { + xkb_keycodes { include "sun(type5x86)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(pc101)+sun/us(pc101currency)"}; + xkb_geometry { include "sun(x86)" }; +}; + +xkb_keymap "US101A_Sun" { + xkb_keycodes { include "sun(type5x86)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(pc101)+sun/us(US101A_Sun)" }; + xkb_geometry { include "sun(x86)" }; +}; + +xkb_keymap "US101A_x86" { + xkb_keycodes { include "sun(x86)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "us(pc101)" }; + xkb_geometry { include "sun(x86)" }; +}; + +xkb_keymap "US4" { + xkb_keycodes { include "sun(type4)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type4)" }; + xkb_geometry { include "sun(type4)" }; +}; + +xkb_keymap "US5" { + xkb_keycodes { include "sun(type5)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)" }; + xkb_geometry { include "sun(type5)" }; +}; + +xkb_keymap "US5_Hobo" { + xkb_keycodes { include "sun(type5hobo)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5hobo)" }; + xkb_geometry { include "sun(type5hobo)" }; +}; + +xkb_keymap "US_UNIX5" { + xkb_keycodes { include "sun(type5)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5)" }; + xkb_geometry { include "sun(type5unix)" }; +}; + +xkb_keymap "US_UNIX5_Hobo" { + // Same as US5_Hobo + xkb_keycodes { include "sun(type5hobo)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type5hobo)" }; + xkb_geometry { include "sun(type5hobo)" }; +}; + +xkb_keymap "US6" { + xkb_keycodes { include "sun(type6)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type6)" }; + xkb_geometry { include "sun(type6)" }; +}; + +xkb_keymap "US6_usb" { + xkb_keycodes { include "sun(type6_usb)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type6)" }; + xkb_geometry { include "sun(type6)" }; +}; + +xkb_keymap "US_UNIX6" { + xkb_keycodes { include "sun(type6)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type6)" }; + xkb_geometry { include "sun(type6unix)" }; +}; + +xkb_keymap "US_UNIX6_usb" { + xkb_keycodes { include "sun(type6_usb)" }; + xkb_types { include "default" }; + xkb_compatibility { include "default" }; + xkb_symbols { include "sun/us(type6)" }; + xkb_geometry { include "sun(type6unix)" }; +}; diff --git a/xorg-server/xkeyboard-config/keymap/sun_vndr/makefile b/xorg-server/xkeyboard-config/keymap/sun_vndr/makefile new file mode 100644 index 000000000..1dd8b4c45 --- /dev/null +++ b/xorg-server/xkeyboard-config/keymap/sun_vndr/makefile @@ -0,0 +1,20 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\keymap\sun_vndr + +dist_keymap_DATA = \ +all de es fi \ +fr no pl \ +ru se uk \ +us + +DATA_FILES=$(dist_keymap_DATA:%=$(DESTDIR)\%) + +# We need to make the rule for all explicit since searching it in the implicit rules doesn't work for all +$(DESTDIR)\all: all.in + copy $< $@ + + +include ..\..\xkbrules.mak diff --git a/xorg-server/xkeyboard-config/makefile b/xorg-server/xkeyboard-config/makefile new file mode 100644 index 000000000..94c550947 --- /dev/null +++ b/xorg-server/xkeyboard-config/makefile @@ -0,0 +1,9 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +SUBDIRS = compat geometry keycodes keymap rules semantics symbols types + +load_makefile $(SUBDIRS:%=%\makefile MAKESERVER=0 DEBUG=$(DEBUG);) + +all: $(SUBDIRS:%=%\all) 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/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};
+}
diff --git a/xorg-server/xkeyboard-config/semantics/default b/xorg-server/xkeyboard-config/semantics/default.in index 2b8defc80..a6e70c991 100644 --- a/xorg-server/xkeyboard-config/semantics/default +++ b/xorg-server/xkeyboard-config/semantics/default.in @@ -1,6 +1,6 @@ -default xkb_semantics "default" {
-
-xkb_types { include "default" };
-xkb_compatibility { include "default" };
-
-};
+default xkb_semantics "default" { + +xkb_types { include "default" }; +xkb_compatibility { include "default" }; + +}; diff --git a/xorg-server/xkeyboard-config/semantics/makefile b/xorg-server/xkeyboard-config/semantics/makefile new file mode 100644 index 000000000..0181c169f --- /dev/null +++ b/xorg-server/xkeyboard-config/semantics/makefile @@ -0,0 +1,17 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +THISDIR=semantics + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\$(THISDIR) + +dist_xkbdata_semantics_DATA = \ + basic \ + complete \ + default \ + xtest + +DATA_FILES=$(dist_xkbdata_semantics_DATA:%=$(DESTDIR)\%) + +include ..\xkbrules.mak diff --git a/xorg-server/xkeyboard-config/symbols/af b/xorg-server/xkeyboard-config/symbols/af index d7d866d34..691b0a07c 100644 --- a/xorg-server/xkeyboard-config/symbols/af +++ b/xorg-server/xkeyboard-config/symbols/af @@ -1,397 +1,397 @@ -// -// Keymap for the Afghan dari keybord layout -// Based on the specification "Computer Locale Requirements for -// Afghanstan" [1] from the "United Nations Development Programme -// Afghanistan" and the "Afghan Transitional Islamic -// Administration Ministry of Communications". -// [1] http://www.evertype.com/standards/af/ -// For a MINI HOWTO see [2]. -// [2] http://www.afghanischerKulturverein.de/en/afghanComputer_en.php -// -// 2006-02-15 file created by M. Emal Alekozai <memala@gmx.net> - -partial default alphanumeric_keys -xkb_symbols "basic" { - //name[Group1]= "Afghanistan Dari"; - name[Group1]= "Afghanistan"; - - key <TLDE> { [ 0x100200d, 0x10000f7, dead_tilde ] }; - key <AE01> { [ 0x10006f1, exclam, 0x1000060 ] }; - key <AE02> { [ 0x10006f2, 0x100066c, 0x1000040 ] }; - key <AE03> { [ 0x10006f3, 0x100066b, numbersign ] }; - key <AE04> { [ 0x10006f4, 0x100e60b, 0x1000024] }; - key <AE05> { [ 0x10006f5, 0x100066a, 0x1000025 ] }; - key <AE06> { [ 0x10006f6, multiply, 0x100005e ] }; - key <AE07> { [ 0x10006f7, Arabic_comma, 0x1000026 ] }; - key <AE08> { [ 0x10006f8, asterisk, 0x1002022 ] }; - key <AE09> { [ 0x10006f9, 0x1000029, 0x100200e ] }; - key <AE10> { [ 0x10006f0, 0x1000028, 0x100200f ] }; - key <AE11> { [ minus, Arabic_tatweel, 0x100005f ] }; - key <AE12> { [ plus, equal ] }; - - key <AD01> { [ Arabic_dad, Arabic_sukun, 0x10000b0 ] }; - key <AD02> { [ Arabic_sad, Arabic_dammatan ] }; - key <AD03> { [ Arabic_theh, Arabic_kasratan, 0x10020ac ] }; - key <AD04> { [ Arabic_qaf, Arabic_fathatan, 0x100fd3e ] }; - key <AD05> { [ Arabic_feh, Arabic_damma, 0x100fd3f ] }; - key <AD06> { [ Arabic_ghain, Arabic_kasra, 0x100e656] }; - key <AD07> { [ Arabic_ain, Arabic_fatha, 0x100e659] }; - key <AD08> { [ Arabic_heh, Arabic_shadda, 0x1000655] }; - key <AD09> { [ Arabic_khah, bracketright, 0x1000027] }; - key <AD10> { [ Arabic_hah, bracketleft, 0x1000022] }; - key <AD11> { [ Arabic_jeem, braceright, 0x1000681 ] }; - key <AD12> { [ 0x1000686, braceleft, 0x1000685 ] }; - - key <AC01> { [ Arabic_sheen, Arabic_hamzaonwaw, 0x100069a ] }; - key <AC02> { [ Arabic_seen, Arabic_hamzaonyeh, 0x10006cd ] }; - key <AC03> { [ 0x10006cc, Arabic_yeh, 0x1000649 ] }; - key <AC04> { [ Arabic_beh, Arabic_hamzaunderalef, 0x10006d0 ] }; - key <AC05> { [ Arabic_lam, Arabic_hamzaonalef, 0x10006b7 ] }; - key <AC06> { [ Arabic_alef, Arabic_maddaonalef, 0x1000671 ] }; - key <AC07> { [ Arabic_teh, Arabic_tehmarbuta, 0x100067c ] }; - key <AC08> { [ Arabic_noon, 0x10000bb, 0x10006bc ] }; - key <AC09> { [ Arabic_meem, 0x10000ab, 0x10006ba ] }; - key <AC10> { [ 0x10006a9, colon, 0x100003b ] }; - key <AC11> { [ 0x10006af, Arabic_semicolon, 0x10006ab ] }; - - key <BKSL> { [ backslash, bar, 0x100003f ] }; - - key <AB01> { [ Arabic_zah, Arabic_kaf, 0x10006d2] }; - key <AB02> { [ Arabic_tah, 0x1000653 , 0x1000691 ] }; - key <AB03> { [ Arabic_zain, 0x1000698, 0x1000696 ] }; - key <AB04> { [ Arabic_ra, 0x1000670 , 0x1000693 ] }; - key <AB05> { [ Arabic_thal, 0x100200c, 0x1000688 ] }; - key <AB06> { [ Arabic_dal, 0x1000654, 0x1000689 ] }; - key <AB07> { [ 0x100067e, Arabic_hamza, 0x1000679 ] }; - key <AB08> { [ Arabic_waw, greater, 0x100002c ] }; - key <AB09> { [ period, less, 0x10006c7 ] }; - key <AB10> { [ slash, Arabic_question_mark, 0x10006c9 ] }; - - include "nbsp(zwnj2nb3)" - include "level3(ralt_switch)" -}; - -// Keymap for the Afghan pashto keybord layout -// Based on the specification "Computer Locale Requirements for -// Afghanstan" [1] from the "United Nations Development Programme -// Afghanistan"" and the "Afghan Transitional Islamic -// Administration Ministry of Communications". -// [1] http://www.evertype.com/standards/af/ -// For a MINI HOWTO see [2]. -// [2] http://www.afghanischerKulturverein.de/en/afghanComputer_en.php -// -// 2006-02-15 file created by M. Emal Alekozai <memala@gmx.net> - -partial alphanumeric_keys -xkb_symbols "ps" { - name[Group1]= "Afghanistan - Pashto"; - - key <TLDE> { [ 0x100200d, 0x10000f7, dead_tilde ] }; - key <AE01> { [ 0x10006f1, exclam, 0x1000060 ] }; - key <AE02> { [ 0x10006f2, 0x100066c, 0x1000040 ] }; - key <AE03> { [ 0x10006f3, 0x100066b, numbersign ] }; - key <AE04> { [ 0x10006f4, 0x100e60b, 0x1000024] }; - key <AE05> { [ 0x10006f5, 0x100066a, 0x1000025 ] }; - key <AE06> { [ 0x10006f6, multiply, 0x100005e ] }; - key <AE07> { [ 0x10006f7, 0x10000bb, 0x1000026 ] }; - key <AE08> { [ 0x10006f8, 0x10000ab, 0x1002022 ] }; - key <AE09> { [ 0x10006f9, 0x1000029, 0x100200e ] }; - key <AE10> { [ 0x10006f0, 0x1000028, 0x100200f ] }; - key <AE11> { [ minus, Arabic_tatweel, 0x100005f ] }; - key <AE12> { [ plus, equal ] }; - - key <AD01> { [ Arabic_dad, Arabic_sukun, 0x10000b0 ] }; - key <AD02> { [ Arabic_sad, Arabic_dammatan, 0x1000653 ] }; - key <AD03> { [ Arabic_theh, Arabic_kasratan, 0x10020ac ] }; - key <AD04> { [ Arabic_qaf, Arabic_fathatan, 0x100fd3e ] }; - key <AD05> { [ Arabic_feh, Arabic_damma, 0x100fd3f ] }; - key <AD06> { [ Arabic_ghain, Arabic_kasra, 0x100e656] }; - key <AD07> { [ Arabic_ain, Arabic_fatha, 0x100e659] }; - key <AD08> { [ Arabic_heh, Arabic_shadda, 0x1000670] }; - key <AD09> { [ Arabic_khah, 0x1000681, 0x1000027] }; - key <AD10> { [ Arabic_hah, 0x1000685, 0x1000022] }; - key <AD11> { [ Arabic_jeem, 0x100005d, 0x100007d ] }; - key <AD12> { [ 0x1000686, 0x100005b, 0x100007b ] }; - - key <AC01> { [ Arabic_sheen, 0x100069a ] }; - key <AC02> { [ Arabic_seen, Arabic_hamzaonyeh, 0x10006d2 ] }; - key <AC03> { [ 0x10006cc, Arabic_yeh, 0x1000649 ] }; - key <AC04> { [ Arabic_beh, 0x100067e, 0x10006ba ] }; - key <AC05> { [ Arabic_lam, Arabic_hamzaonalef, 0x10006b7 ] }; - key <AC06> { [ Arabic_alef, Arabic_maddaonalef, 0x1000671 ] }; - key <AC07> { [ Arabic_teh, 0x100067c, 0x1000679 ] }; - key <AC08> { [ Arabic_noon, 0x10006bc, 0x100003e ] }; - key <AC09> { [ Arabic_meem, 0x1000629, 0x100003c ] }; - key <AC10> { [ 0x10006a9, colon, 0x1000643 ] }; - key <AC11> { [ 0x10006ab, Arabic_semicolon, 0x10006af ] }; - - key <BKSL> { [ backslash, 0x100002a, 0x100007c ] }; - - key <AB01> { [ 0x10006cd, 0x1000638, 0x100003f] }; - key <AB02> { [ 0x10006d0, 0x1000637, 0x100003b ] }; - key <AB03> { [ Arabic_zain, 0x1000698, 0x1000655 ] }; - key <AB04> { [ Arabic_ra, 0x1000621, 0x1000654 ] }; - key <AB05> { [ Arabic_thal, 0x100200c, 0x1000625 ] }; - key <AB06> { [ Arabic_dal, 0x1000689, 0x1000688 ] }; - key <AB07> { [ 0x1000693, 0x1000624, 0x1000691 ] }; - key <AB08> { [ Arabic_waw, 0x100060c, 0x100002c ] }; - key <AB09> { [ 0x1000696, 0x100002e, 0x10006c7 ] }; - key <AB10> { [ slash, Arabic_question_mark, 0x10006c9 ] }; - - include "nbsp(zwnj2nb3)" - include "level3(ralt_switch)" -}; - -// Keymap for the Afghan southern uzbek keybord layout -// Based on the specification "Computer Locale Requirements for -// Afghanstan" [1] from the "United Nations Development Programme -// Afghanistan"" and the "Afghan Transitional Islamic -// Administration Ministry of Communications". -// [1] http://www.evertype.com/standards/af/ -// For a MINI HOWTO see [2]. -// [2] http://www.afghanischerKulturverein.de/en/afghanComputer_en.php -// -// 2006-02-15 file created by M. Emal Alekozai <memala@gmx.net> - -partial alphanumeric_keys -xkb_symbols "uz" { - name[Group1]= "Afghanistan - Southern Uzbek"; - - key <TLDE> { [ 0x100200d, 0x10000f7, dead_tilde ] }; - key <AE01> { [ 0x10006f1, exclam, 0x1000060 ] }; - key <AE02> { [ 0x10006f2, 0x100066c, 0x1000040 ] }; - key <AE03> { [ 0x10006f3, 0x100066b, numbersign ] }; - key <AE04> { [ 0x10006f4, 0x100e60b, 0x1000024] }; - key <AE05> { [ 0x10006f5, 0x100066a, 0x1000025 ] }; - key <AE06> { [ 0x10006f6, multiply, 0x100005e ] }; - key <AE07> { [ 0x10006f7, Arabic_comma, 0x1000026 ] }; - key <AE08> { [ 0x10006f8, asterisk, 0x1002022 ] }; - key <AE09> { [ 0x10006f9, 0x1000029, 0x100200e ] }; - key <AE10> { [ 0x10006f0, 0x1000028, 0x100200f ] }; - key <AE11> { [ minus, Arabic_tatweel, 0x100005f ] }; - key <AE12> { [ plus, equal ] }; - - key <AD01> { [ Arabic_dad, Arabic_sukun, 0x10000b0 ] }; - key <AD02> { [ Arabic_sad, Arabic_dammatan, 0x1000653 ] }; - key <AD03> { [ Arabic_theh, Arabic_kasratan, 0x10020ac ] }; - key <AD04> { [ Arabic_qaf, Arabic_fathatan, 0x100fd3e ] }; - key <AD05> { [ Arabic_feh, Arabic_damma, 0x100fd3f ] }; - key <AD06> { [ Arabic_ghain, Arabic_kasra, 0x100e656] }; - key <AD07> { [ Arabic_ain, Arabic_fatha, 0x100e659] }; - key <AD08> { [ Arabic_heh, Arabic_shadda, 0x1000670] }; - key <AD09> { [ Arabic_khah, bracketright, 0x1000027] }; - key <AD10> { [ Arabic_hah, bracketleft, 0x1000022] }; - key <AD11> { [ Arabic_jeem, braceright, 0x1000681 ] }; - key <AD12> { [ 0x1000686, braceleft, 0x1000685 ] }; - - key <AC01> { [ Arabic_sheen, Arabic_hamzaonwaw, 0x100069a ] }; - key <AC02> { [ Arabic_seen, Arabic_hamzaonyeh, 0x10006cd ] }; - key <AC03> { [ 0x10006cc, Arabic_yeh, 0x1000649 ] }; - key <AC04> { [ Arabic_beh, 0x10006d0, 0x1000643 ] }; - key <AC05> { [ Arabic_lam, Arabic_hamzaonalef, 0x10006b7 ] }; - key <AC06> { [ Arabic_alef, Arabic_maddaonalef, 0x1000671 ] }; - key <AC07> { [ Arabic_teh, Arabic_tehmarbuta, 0x100067c ] }; - key <AC08> { [ Arabic_noon, 0x10000bb, 0x10006bc ] }; - key <AC09> { [ Arabic_meem, 0x10000ab, 0x10006ba ] }; - key <AC10> { [ 0x10006a9, colon, 0x100003b ] }; - key <AC11> { [ 0x10006af, Arabic_semicolon, 0x10006ab ] }; - - key <BKSL> { [ backslash, bar, 0x100003f ] }; - - key <AB01> { [ Arabic_zah, 0x10006c9, 0x10006d2] }; - key <AB02> { [ Arabic_tah, 0x10006c7, 0x1000691 ] }; - key <AB03> { [ Arabic_zain, 0x1000698, 0x1000696 ] }; - key <AB04> { [ Arabic_ra, 0x1000625, 0x1000693 ] }; - key <AB05> { [ Arabic_thal, 0x100200c, 0x1000688 ] }; - key <AB06> { [ Arabic_dal, 0x1000654, 0x1000689 ] }; - key <AB07> { [ 0x100067e, Arabic_hamza, 0x1000679 ] }; - key <AB08> { [ Arabic_waw, greater, 0x100002c ] }; - key <AB09> { [ period, less ] }; - key <AB10> { [ slash, Arabic_question_mark, 0x1000655 ] }; - - include "nbsp(zwnj2nb3)" - include "level3(ralt_switch)" -}; - -partial alphanumeric_keys -xkb_symbols "olpc-ps" { - - name[Group1]= "Afghanistan - OLPC Pashto"; - - key <TLDE> { [ 0x100200D, 0x1000654, grave ] }; // zero width joiner, Arabic hamza above - key <AE01> { [ 0x10006F1, exclam, asciitilde ] }; // Arabic one - key <AE02> { [ 0x10006F2, 0x100066C, at ] }; // Arabic two, Arabic thousands separator - key <AE03> { [ 0x10006F3, 0x100066B, numbersign ] }; // Arabic three, Arabic decimal separator - key <AE04> { [ 0x10006F4, 0x100060B, dollar ] }; // Arabic four, Afghani sign - key <AE05> { [ 0x10006F5, 0x100066A, percent ] }; // Arabic five, Arabic percent sign - key <AE06> { [ 0x10006F6, multiply, asciicircum ] }; // Arabic six - key <AE07> { [ 0x10006F7, guillemotright, ampersand ] }; // Arabic seven - key <AE08> { [ 0x10006F8, guillemotleft, 0x100066D ] }; // Arabic eight, Arabic five-pointed star - key <AE09> { [ 0x10006F9, parenright, enfilledcircbullet ] }; // Arabic nine - key <AE10> { [ 0x10006F0, parenleft, degree ] }; // Arabic zero - key <AE11> { [ minus, 0x1000640, underscore ] }; // Arabic_tatweel - key <AE12> { [ plus, equal, division ] }; - - key <AD01> { [ 0x1000636, 0x1000652, EuroSign ] }; // Arabic dad, Arabic sukun - key <AD02> { [ 0x1000635, 0x100064C, 0x1000671 ] }; // Arabic sad, Arabic dammatan, Arabic alef walsa - key <AD03> { [ 0x100062B, 0x100064D, 0x1000649 ] }; // Arabic theh, Arabic kasratan, Arabic alef maksura initial form - key <AD04> { [ 0x1000642, 0x100064B, 0x100200E ] }; // Arabic qaf, Arabic fathatan, left-to-right mark - key <AD05> { [ 0x1000641, 0x100064F, 0x100200F ] }; // Arabic feh, Arabic damma, right-to-left mark - key <AD06> { [ 0x100063A, 0x1000650, 0x100e653 ] }; // Arabic ghain, Arabic kasra, Arabic alef with madda above - key <AD07> { [ 0x1000639, 0x100064E, 0x100e659 ] }; // Arabic ain, Arabic fatha, Arabic zwarakay - key <AD08> { [ 0x1000647, 0x1000651, 0x1000670 ] }; // Arabic heh, Arabic shadda, Arabic superscript alef - key <AD09> { [ 0x100062E, 0x1000681, apostrophe ] }; // Arabic khah, Arabic hah with hamza above, - key <AD10> { [ 0x100062D, 0x1000685, quotedbl ] }; // Arabic hah, Arabic hah with three dots above - key <AD11> { [ 0x100062C, bracketright, braceleft ] }; // Arabic jeem - key <AD12> { [ 0x1000686, bracketleft, braceright ] }; // Arabic tcheh - - key <AC01> { [ 0x1000634, 0x100069A ] }; // Arabic sheen, Arabic seen with dot below and dot above - key <AC02> { [ 0x1000633, 0x10006CD ] }; // Arabic seen, Arabic yeh with tail - key <AC03> { [ 0x10006CC, 0x100064A, 0x10006D2 ] }; // Farsi yeh, Arabic yeh, Arabic yeh barree - key <AC04> { [ 0x1000628, 0x100067E, 0x10006BA ] }; // Arabic beh, Arabic peh, Arabic noon ghunna - key <AC05> { [ 0x1000644, 0x1000623, 0x10006B7 ] }; // Arabic lam, Arabic hamza on alef, Arabic alef with hamza above - key <AC06> { [ 0x1000627, 0x1000622, 0x1000625 ] }; // Arabic alef, Arabic madda on alef, Arabic alef with hamza below - key <AC07> { [ 0x100062A, 0x100067C, 0x1000679 ] }; // Arabic teh, Arabic teh with ring, Arabic tteh - key <AC08> { [ 0x1000646, 0x10006BC, greater ] }; // Arabic noon, Arabic noon with ring - key <AC09> { [ 0x1000645, 0x1000629, less ] }; // Arabic meem, Arabic teh marbuta - key <AC10> { [ 0x10006A9, colon, 0x1000643 ] }; // Arabic keheh, Arabic kaf - key <AC11> { [ 0x10006AB, 0x100061B, 0x10006AF ] }; // Arabic kaf with ring, Arabic semicolon, Arabic gaf - - key <BKSL> { [ backslash, asterisk, bar ] }; - - key <AB01> { [ 0x1000638, 0x1000626, question] }; // Arabic zah, Arabic yeh with hamza above - key <AB02> { [ 0x10006D0, 0x1000637, semicolon ] }; // Arabic tah, Arabic E - key <AB03> { [ 0x1000632, 0x1000698 ] }; // Arabic zain, Arabic jeh - key <AB04> { [ 0x1000631, 0x1000621 ] }; // Arabic_ra (reh?), Arabic hamza - key <AB05> { [ 0x1000630, 0x100200C ] }; // Arabic_thal, zero width non-joiner - key <AB06> { [ 0x100062F, 0x1000689, 0x1000688 ] }; // Arabic_dal, Arabic dal with ring, Arabic ddal - key <AB07> { [ 0x1000693, 0x1000624, 0x1000691 ] }; // Arabic reh with ring, Arabic waw with hamza above, Arabic rreh - key <AB08> { [ 0x1000648, period, comma ] }; // Arabic_waw, Arabic comma - key <AB09> { [ 0x1000696, 0x100002E, 0x10006C7 ] }; // Arabic reh with dot below and dot above, full stop, Arabic letter U - key <AB10> { [ slash, 0x100061F, 0x10006C9 ] }; // Arabic question mark, Arabic kirghiz yu - - include "nbsp(zwnj2nb3)" - include "group(olpc)" -}; - -partial alphanumeric_keys -xkb_symbols "fa-olpc" { - - name[Group1]= "Afghanistan - OLPC Dari"; - - key <TLDE> { [ 0x100200D, division, asciitilde ] }; // zero width joiner - key <AE01> { [ 0x10006F1, exclam, grave ] }; // Arabic one - key <AE02> { [ 0x10006F2, 0x100066C, at ] }; // Arabic two, Arabic thousands separator - key <AE03> { [ 0x10006F3, 0x100066B, numbersign ] }; // Arabic three, Arabic decimal separator - key <AE04> { [ 0x10006F4, 0x100060B, dollar ] }; // Arabic four, Afghani sign - key <AE05> { [ 0x10006F5, 0x100066A, percent ] }; // Arabic five, Arabic percent sign - key <AE06> { [ 0x10006F6, multiply, asciicircum ] }; // Arabic six - key <AE07> { [ 0x10006F7, 0x100060C, ampersand ] }; // Arabic seven, Arabic comma - key <AE08> { [ 0x10006F8, asterisk, enfilledcircbullet ] }; // Arabic eight, - key <AE09> { [ 0x10006F9, parenright, 0x100200E ] }; // Arabic nine, left-to-right mark - key <AE10> { [ 0x10006F0, parenleft, 0x100200F ] }; // Arabic zero, right-to-left mark - key <AE11> { [ minus, 0x1000640, underscore ] }; // Arabic_tatweel - key <AE12> { [ plus, equal ] }; - - key <AD01> { [ 0x1000636, 0x1000652, degree ] }; // Arabic dad, Arabic sukun - key <AD02> { [ 0x1000635, 0x100064C ] }; // Arabic sad, Arabic dammatan - key <AD03> { [ 0x100062B, 0x100064D, EuroSign ] }; // Arabic theh, Arabic kasratan - key <AD04> { [ 0x1000642, 0x100064B, 0x100FD3E ] }; // Arabic qaf, Arabic fathatan, ornate left paren - key <AD05> { [ 0x1000641, 0x100064F, 0x100FD3F ] }; // Arabic feh, Arabic damma, ornate right paren - key <AD06> { [ 0x100063A, 0x1000650, 0x1000656 ] }; // Arabic ghain, Arabic kasra, Arabic subscript alef - key <AD07> { [ 0x1000639, 0x100064E, 0x100e659 ] }; // Arabic ain, Arabic fatha, Arabic zwarakay - key <AD08> { [ 0x1000647, 0x1000651, 0x1000655 ] }; // Arabic heh, Arabic shadda, Arabic hamza below - key <AD09> { [ 0x100062E, bracketright, apostrophe ] }; // Arabic khah - key <AD10> { [ 0x100062D, bracketleft, quotedbl ] }; // Arabic hah - key <AD11> { [ 0x100062C, braceright, 0x1000681 ] }; // Arabic jeem, Arabic hah with hamza above - key <AD12> { [ 0x1000686, braceleft, 0x1000685 ] }; // Arabic tcheh, Arabic hah with three dots above - - key <AC01> { [ 0x1000634, 0x1000624, 0x100069A ] }; // Arabic sheen, Arabic waw with hamza above, Arabic seen with dot below and dot above - key <AC02> { [ 0x1000633, 0x1000626, 0x10006CD ] }; // Arabic seen, Arabic yeh with hamza above, Arabic yeh with tail - key <AC03> { [ 0x10006CC, 0x100064A, 0x1000649 ] }; // Farsi yeh, Arabic yeh, Arabic alef maksura - key <AC04> { [ 0x1000628, 0x1000625, 0x10006D0 ] }; // Arabic beh, Arabic alef with hamza below, Arabic e - key <AC05> { [ 0x1000644, 0x1000623, 0x10006B7 ] }; // Arabic lam, Arabic hamza on alef, Arabic alef with hamza above - key <AC06> { [ 0x1000627, 0x1000622, 0x1000671 ] }; // Arabic alef, Arabic madda on alef, Arabic alef wasla - key <AC07> { [ 0x100062A, 0x1000629, 0x100067C ] }; // Arabic teh, Arabic teh marbuta, Arabic tteh - key <AC08> { [ 0x1000646, guillemotright, 0x10006BC ] }; // Arabic noon, Arabic noon with ring - key <AC09> { [ 0x1000645, guillemotleft, 0x10006BA ] }; // Arabic meem, Arabic noon ghunna - key <AC10> { [ 0x10006A9, colon, semicolon ] }; // Arabic keheh, - key <AC11> { [ 0x10006AF, 0x100061B, 0x10006AB ] }; // Arabic gaf, Arabic semicolon, Arabic kaf with ring - - key <BKSL> { [ backslash, bar, question ] }; - - key <AB01> { [ 0x1000638, 0x1000643, 0x10006D2 ] }; // Arabic zah, Arabic kaf, Arabic yeh barree - key <AB02> { [ 0x1000637, 0x1000653, 0x1000691 ] }; // Arabic tah, Arabic maddah above, Arabic rreh - key <AB03> { [ 0x1000632, 0x1000698, 0x1000696 ] }; // Arabic zain, Arabic jeh, Arabic reh with dot below and dot above - key <AB04> { [ 0x1000631, 0x1000670, 0x1000693 ] }; // Arabic_ra (reh?), Arabic superscript alef, Arabic reh with ring - key <AB05> { [ 0x1000630, 0x100200C, 0x1000688 ] }; // Arabic_thal, zero width non-joiner, Arabic ddal - key <AB06> { [ 0x100062F, 0x1000654, 0x1000689 ] }; // Arabic dal, Arabic hamza above, Arabic dal with ring - key <AB07> { [ 0x100067E, 0x1000621, 0x1000679 ] }; // Arabic peh, Arabic hamza, Arabic tteh - key <AB08> { [ 0x1000648, greater, comma ] }; // Arabic_waw - key <AB09> { [ period, less, 0x10006C7 ] }; // Arabic u - key <AB10> { [ slash, 0x100061F, 0x10006C9 ] }; // Arabic question mark, Arabic kirghiz yu - - include "nbsp(zwnj2nb3)" - include "group(olpc)" -}; - -partial alphanumeric_keys -xkb_symbols "uz-olpc" { - - name[Group1]= "Afghanistan - OLPC Southern Uzbek"; - - key <TLDE> { [ 0x100200D, division, asciitilde ] }; // zero width joiner - key <AE01> { [ 0x10006F1, exclam, grave ] }; // Arabic one - key <AE02> { [ 0x10006F2, 0x100066C, at ] }; // Arabic two, Arabic thousands separator - key <AE03> { [ 0x10006F3, 0x100066B, numbersign ] }; // Arabic three, Arabic decimal separator - key <AE04> { [ 0x10006F4, 0x100060B, dollar ] }; // Arabic four, Afghani sign - key <AE05> { [ 0x10006F5, 0x100066A, percent ] }; // Arabic five, Arabic percent sign - key <AE06> { [ 0x10006F6, multiply, asciicircum ] }; // Arabic six - key <AE07> { [ 0x10006F7, 0x100060C, ampersand ] }; // Arabic seven, Arabic comma - key <AE08> { [ 0x10006F8, asterisk, enfilledcircbullet ] }; // Arabic eight, - key <AE09> { [ 0x10006F9, parenright, 0x100200E ] }; // Arabic nine, left-to-right mark - key <AE10> { [ 0x10006F0, parenleft, 0x100200F ] }; // Arabic zero, right-to-left mark - key <AE11> { [ minus, 0x1000640, underscore ] }; // Arabic_tatweel - key <AE12> { [ plus, equal ] }; - - key <AD01> { [ 0x1000636, 0x1000652, degree ] }; // Arabic dad, Arabic sukun - key <AD02> { [ 0x1000635, 0x100064C, 0x1000653 ] }; // Arabic sad, Arabic dammatan, Arabic maddah above - key <AD03> { [ 0x100062B, 0x100064D, EuroSign ] }; // Arabic theh, Arabic kasratan - key <AD04> { [ 0x1000642, 0x100064B, 0x100FD3E ] }; // Arabic qaf, Arabic fathatan, ornate left paren - key <AD05> { [ 0x1000641, 0x100064F, 0x100FD3F ] }; // Arabic feh, Arabic damma, ornate right paren - key <AD06> { [ 0x100063A, 0x1000650, 0x1000656 ] }; // Arabic ghain, Arabic kasra, Arabic subscript alef - key <AD07> { [ 0x1000639, 0x100064E, 0x100e659 ] }; // Arabic ain, Arabic fatha, Arabic zwarakay - key <AD08> { [ 0x1000647, 0x1000651, 0x1000670 ] }; // Arabic heh, Arabic shadda, Arabic superscript alef - key <AD09> { [ 0x100062E, bracketright, apostrophe ] }; // Arabic khah - key <AD10> { [ 0x100062D, bracketleft, quotedbl ] }; // Arabic hah - key <AD11> { [ 0x100062C, braceright, 0x1000681 ] }; // Arabic jeem, Arabic hah with hamza above - key <AD12> { [ 0x1000686, braceleft, 0x1000685 ] }; // Arabic tcheh, Arabic hah with three dots above - - key <AC01> { [ 0x1000634, 0x1000624, 0x100069A ] }; // Arabic sheen, Arabic waw with hamza above, Arabic seen with dot below and dot above - key <AC02> { [ 0x1000633, 0x1000626, 0x10006CD ] }; // Arabic seen, Arabic yeh with hamza above, Arabic yeh with tail - key <AC03> { [ 0x10006CC, 0x100064A, 0x1000649 ] }; // Farsi yeh, Arabic yeh, Arabic alef maksura - key <AC04> { [ 0x1000628, 0x10006D0, 0x1000643 ] }; // Arabic beh, Arabic e, Arabic kaf - key <AC05> { [ 0x1000644, 0x1000623, 0x10006B7 ] }; // Arabic lam, Arabic hamza on alef, Arabic alef with hamza above - key <AC06> { [ 0x1000627, 0x1000622, 0x1000671 ] }; // Arabic alef, Arabic madda on alef, Arabic alef wasla - key <AC07> { [ 0x100062A, 0x1000629, 0x100067C ] }; // Arabic teh, Arabic teh marbuta, Arabic tteh - key <AC08> { [ 0x1000646, guillemotright, 0x10006BC ] }; // Arabic noon, Arabic noon with ring - key <AC09> { [ 0x1000645, guillemotleft, 0x10006BA ] }; // Arabic meem, Arabic noon ghunna - key <AC10> { [ 0x10006A9, colon, semicolon ] }; // Arabic keheh, - key <AC11> { [ 0x10006AF, 0x100061B, 0x10006AB ] }; // Arabic gaf, Arabic semicolon, Arabic kaf with ring - - key <BKSL> { [ backslash, bar, question ] }; - - key <AB01> { [ 0x1000638, 0x10006C9, 0x10006D2 ] }; // Arabic zah, Arabic kirghiz yu, Arabic yeh barree - key <AB02> { [ 0x1000637, 0x10006C7, 0x1000691 ] }; // Arabic tah, Arabic u, Arabic rreh - key <AB03> { [ 0x1000632, 0x1000698, 0x1000696 ] }; // Arabic zain, Arabic jeh, Arabic reh with dot below and dot above - key <AB04> { [ 0x1000631, 0x1000625, 0x1000693 ] }; // Arabic_ra (reh?), Arabic alef with hamza below, Arabic reh with ring - key <AB05> { [ 0x1000630, 0x100200C, 0x1000688 ] }; // Arabic_thal, zero width non-joiner, Arabic ddal - key <AB06> { [ 0x100062F, 0x1000654, 0x1000689 ] }; // Arabic dal, Arabic hamza above, Arabic dal with ring - key <AB07> { [ 0x100067E, 0x1000621, 0x1000679 ] }; // Arabic peh, Arabic hamza, Arabic tteh - key <AB08> { [ 0x1000648, greater, comma ] }; // Arabic_waw - key <AB09> { [ period, less ] }; - key <AB10> { [ slash, 0x100061F, 0x1000655 ] }; // Arabic question mark, Arabic hamza below - - include "nbsp(zwnj2nb3)" - include "group(olpc)" -}; +//
+// Keymap for the Afghan dari keybord layout
+// Based on the specification "Computer Locale Requirements for
+// Afghanstan" [1] from the "United Nations Development Programme
+// Afghanistan" and the "Afghan Transitional Islamic
+// Administration Ministry of Communications".
+// [1] http://www.evertype.com/standards/af/
+// For a MINI HOWTO see [2].
+// [2] http://www.afghanischerKulturverein.de/en/afghanComputer_en.php
+//
+// 2006-02-15 file created by M. Emal Alekozai <memala@gmx.net>
+
+partial default alphanumeric_keys
+xkb_symbols "basic" {
+ //name[Group1]= "Afghanistan Dari";
+ name[Group1]= "Afghanistan";
+
+ key <TLDE> { [ 0x100200d, 0x10000f7, dead_tilde ] };
+ key <AE01> { [ 0x10006f1, exclam, 0x1000060 ] };
+ key <AE02> { [ 0x10006f2, 0x100066c, 0x1000040 ] };
+ key <AE03> { [ 0x10006f3, 0x100066b, numbersign ] };
+ key <AE04> { [ 0x10006f4, 0x100e60b, 0x1000024] };
+ key <AE05> { [ 0x10006f5, 0x100066a, 0x1000025 ] };
+ key <AE06> { [ 0x10006f6, multiply, 0x100005e ] };
+ key <AE07> { [ 0x10006f7, Arabic_comma, 0x1000026 ] };
+ key <AE08> { [ 0x10006f8, asterisk, 0x1002022 ] };
+ key <AE09> { [ 0x10006f9, 0x1000029, 0x100200e ] };
+ key <AE10> { [ 0x10006f0, 0x1000028, 0x100200f ] };
+ key <AE11> { [ minus, Arabic_tatweel, 0x100005f ] };
+ key <AE12> { [ plus, equal ] };
+
+ key <AD01> { [ Arabic_dad, Arabic_sukun, 0x10000b0 ] };
+ key <AD02> { [ Arabic_sad, Arabic_dammatan ] };
+ key <AD03> { [ Arabic_theh, Arabic_kasratan, 0x10020ac ] };
+ key <AD04> { [ Arabic_qaf, Arabic_fathatan, 0x100fd3e ] };
+ key <AD05> { [ Arabic_feh, Arabic_damma, 0x100fd3f ] };
+ key <AD06> { [ Arabic_ghain, Arabic_kasra, 0x100e656] };
+ key <AD07> { [ Arabic_ain, Arabic_fatha, 0x100e659] };
+ key <AD08> { [ Arabic_heh, Arabic_shadda, 0x1000655] };
+ key <AD09> { [ Arabic_khah, bracketright, 0x1000027] };
+ key <AD10> { [ Arabic_hah, bracketleft, 0x1000022] };
+ key <AD11> { [ Arabic_jeem, braceright, 0x1000681 ] };
+ key <AD12> { [ 0x1000686, braceleft, 0x1000685 ] };
+
+ key <AC01> { [ Arabic_sheen, Arabic_hamzaonwaw, 0x100069a ] };
+ key <AC02> { [ Arabic_seen, Arabic_hamzaonyeh, 0x10006cd ] };
+ key <AC03> { [ 0x10006cc, Arabic_yeh, 0x1000649 ] };
+ key <AC04> { [ Arabic_beh, Arabic_hamzaunderalef, 0x10006d0 ] };
+ key <AC05> { [ Arabic_lam, Arabic_hamzaonalef, 0x10006b7 ] };
+ key <AC06> { [ Arabic_alef, Arabic_maddaonalef, 0x1000671 ] };
+ key <AC07> { [ Arabic_teh, Arabic_tehmarbuta, 0x100067c ] };
+ key <AC08> { [ Arabic_noon, 0x10000bb, 0x10006bc ] };
+ key <AC09> { [ Arabic_meem, 0x10000ab, 0x10006ba ] };
+ key <AC10> { [ 0x10006a9, colon, 0x100003b ] };
+ key <AC11> { [ 0x10006af, Arabic_semicolon, 0x10006ab ] };
+
+ key <BKSL> { [ backslash, bar, 0x100003f ] };
+
+ key <AB01> { [ Arabic_zah, Arabic_kaf, 0x10006d2] };
+ key <AB02> { [ Arabic_tah, 0x1000653 , 0x1000691 ] };
+ key <AB03> { [ Arabic_zain, 0x1000698, 0x1000696 ] };
+ key <AB04> { [ Arabic_ra, 0x1000670 , 0x1000693 ] };
+ key <AB05> { [ Arabic_thal, 0x100200c, 0x1000688 ] };
+ key <AB06> { [ Arabic_dal, 0x1000654, 0x1000689 ] };
+ key <AB07> { [ 0x100067e, Arabic_hamza, 0x1000679 ] };
+ key <AB08> { [ Arabic_waw, greater, 0x100002c ] };
+ key <AB09> { [ period, less, 0x10006c7 ] };
+ key <AB10> { [ slash, Arabic_question_mark, 0x10006c9 ] };
+
+ include "nbsp(zwnj2nb3)"
+ include "level3(ralt_switch)"
+};
+
+// Keymap for the Afghan pashto keybord layout
+// Based on the specification "Computer Locale Requirements for
+// Afghanstan" [1] from the "United Nations Development Programme
+// Afghanistan"" and the "Afghan Transitional Islamic
+// Administration Ministry of Communications".
+// [1] http://www.evertype.com/standards/af/
+// For a MINI HOWTO see [2].
+// [2] http://www.afghanischerKulturverein.de/en/afghanComputer_en.php
+//
+// 2006-02-15 file created by M. Emal Alekozai <memala@gmx.net>
+
+partial alphanumeric_keys
+xkb_symbols "ps" {
+ name[Group1]= "Afghanistan - Pashto";
+
+ key <TLDE> { [ 0x100200d, 0x10000f7, dead_tilde ] };
+ key <AE01> { [ 0x10006f1, exclam, 0x1000060 ] };
+ key <AE02> { [ 0x10006f2, 0x100066c, 0x1000040 ] };
+ key <AE03> { [ 0x10006f3, 0x100066b, numbersign ] };
+ key <AE04> { [ 0x10006f4, 0x100e60b, 0x1000024] };
+ key <AE05> { [ 0x10006f5, 0x100066a, 0x1000025 ] };
+ key <AE06> { [ 0x10006f6, multiply, 0x100005e ] };
+ key <AE07> { [ 0x10006f7, 0x10000bb, 0x1000026 ] };
+ key <AE08> { [ 0x10006f8, 0x10000ab, 0x1002022 ] };
+ key <AE09> { [ 0x10006f9, 0x1000029, 0x100200e ] };
+ key <AE10> { [ 0x10006f0, 0x1000028, 0x100200f ] };
+ key <AE11> { [ minus, Arabic_tatweel, 0x100005f ] };
+ key <AE12> { [ plus, equal ] };
+
+ key <AD01> { [ Arabic_dad, Arabic_sukun, 0x10000b0 ] };
+ key <AD02> { [ Arabic_sad, Arabic_dammatan, 0x1000653 ] };
+ key <AD03> { [ Arabic_theh, Arabic_kasratan, 0x10020ac ] };
+ key <AD04> { [ Arabic_qaf, Arabic_fathatan, 0x100fd3e ] };
+ key <AD05> { [ Arabic_feh, Arabic_damma, 0x100fd3f ] };
+ key <AD06> { [ Arabic_ghain, Arabic_kasra, 0x100e656] };
+ key <AD07> { [ Arabic_ain, Arabic_fatha, 0x100e659] };
+ key <AD08> { [ Arabic_heh, Arabic_shadda, 0x1000670] };
+ key <AD09> { [ Arabic_khah, 0x1000681, 0x1000027] };
+ key <AD10> { [ Arabic_hah, 0x1000685, 0x1000022] };
+ key <AD11> { [ Arabic_jeem, 0x100005d, 0x100007d ] };
+ key <AD12> { [ 0x1000686, 0x100005b, 0x100007b ] };
+
+ key <AC01> { [ Arabic_sheen, 0x100069a ] };
+ key <AC02> { [ Arabic_seen, Arabic_hamzaonyeh, 0x10006d2 ] };
+ key <AC03> { [ 0x10006cc, Arabic_yeh, 0x1000649 ] };
+ key <AC04> { [ Arabic_beh, 0x100067e, 0x10006ba ] };
+ key <AC05> { [ Arabic_lam, Arabic_hamzaonalef, 0x10006b7 ] };
+ key <AC06> { [ Arabic_alef, Arabic_maddaonalef, 0x1000671 ] };
+ key <AC07> { [ Arabic_teh, 0x100067c, 0x1000679 ] };
+ key <AC08> { [ Arabic_noon, 0x10006bc, 0x100003e ] };
+ key <AC09> { [ Arabic_meem, 0x1000629, 0x100003c ] };
+ key <AC10> { [ 0x10006a9, colon, 0x1000643 ] };
+ key <AC11> { [ 0x10006ab, Arabic_semicolon, 0x10006af ] };
+
+ key <BKSL> { [ backslash, 0x100002a, 0x100007c ] };
+
+ key <AB01> { [ 0x10006cd, 0x1000638, 0x100003f] };
+ key <AB02> { [ 0x10006d0, 0x1000637, 0x100003b ] };
+ key <AB03> { [ Arabic_zain, 0x1000698, 0x1000655 ] };
+ key <AB04> { [ Arabic_ra, 0x1000621, 0x1000654 ] };
+ key <AB05> { [ Arabic_thal, 0x100200c, 0x1000625 ] };
+ key <AB06> { [ Arabic_dal, 0x1000689, 0x1000688 ] };
+ key <AB07> { [ 0x1000693, 0x1000624, 0x1000691 ] };
+ key <AB08> { [ Arabic_waw, 0x100060c, 0x100002c ] };
+ key <AB09> { [ 0x1000696, 0x100002e, 0x10006c7 ] };
+ key <AB10> { [ slash, Arabic_question_mark, 0x10006c9 ] };
+
+ include "nbsp(zwnj2nb3)"
+ include "level3(ralt_switch)"
+};
+
+// Keymap for the Afghan southern uzbek keybord layout
+// Based on the specification "Computer Locale Requirements for
+// Afghanstan" [1] from the "United Nations Development Programme
+// Afghanistan"" and the "Afghan Transitional Islamic
+// Administration Ministry of Communications".
+// [1] http://www.evertype.com/standards/af/
+// For a MINI HOWTO see [2].
+// [2] http://www.afghanischerKulturverein.de/en/afghanComputer_en.php
+//
+// 2006-02-15 file created by M. Emal Alekozai <memala@gmx.net>
+
+partial alphanumeric_keys
+xkb_symbols "uz" {
+ name[Group1]= "Afghanistan - Southern Uzbek";
+
+ key <TLDE> { [ 0x100200d, 0x10000f7, dead_tilde ] };
+ key <AE01> { [ 0x10006f1, exclam, 0x1000060 ] };
+ key <AE02> { [ 0x10006f2, 0x100066c, 0x1000040 ] };
+ key <AE03> { [ 0x10006f3, 0x100066b, numbersign ] };
+ key <AE04> { [ 0x10006f4, 0x100e60b, 0x1000024] };
+ key <AE05> { [ 0x10006f5, 0x100066a, 0x1000025 ] };
+ key <AE06> { [ 0x10006f6, multiply, 0x100005e ] };
+ key <AE07> { [ 0x10006f7, Arabic_comma, 0x1000026 ] };
+ key <AE08> { [ 0x10006f8, asterisk, 0x1002022 ] };
+ key <AE09> { [ 0x10006f9, 0x1000029, 0x100200e ] };
+ key <AE10> { [ 0x10006f0, 0x1000028, 0x100200f ] };
+ key <AE11> { [ minus, Arabic_tatweel, 0x100005f ] };
+ key <AE12> { [ plus, equal ] };
+
+ key <AD01> { [ Arabic_dad, Arabic_sukun, 0x10000b0 ] };
+ key <AD02> { [ Arabic_sad, Arabic_dammatan, 0x1000653 ] };
+ key <AD03> { [ Arabic_theh, Arabic_kasratan, 0x10020ac ] };
+ key <AD04> { [ Arabic_qaf, Arabic_fathatan, 0x100fd3e ] };
+ key <AD05> { [ Arabic_feh, Arabic_damma, 0x100fd3f ] };
+ key <AD06> { [ Arabic_ghain, Arabic_kasra, 0x100e656] };
+ key <AD07> { [ Arabic_ain, Arabic_fatha, 0x100e659] };
+ key <AD08> { [ Arabic_heh, Arabic_shadda, 0x1000670] };
+ key <AD09> { [ Arabic_khah, bracketright, 0x1000027] };
+ key <AD10> { [ Arabic_hah, bracketleft, 0x1000022] };
+ key <AD11> { [ Arabic_jeem, braceright, 0x1000681 ] };
+ key <AD12> { [ 0x1000686, braceleft, 0x1000685 ] };
+
+ key <AC01> { [ Arabic_sheen, Arabic_hamzaonwaw, 0x100069a ] };
+ key <AC02> { [ Arabic_seen, Arabic_hamzaonyeh, 0x10006cd ] };
+ key <AC03> { [ 0x10006cc, Arabic_yeh, 0x1000649 ] };
+ key <AC04> { [ Arabic_beh, 0x10006d0, 0x1000643 ] };
+ key <AC05> { [ Arabic_lam, Arabic_hamzaonalef, 0x10006b7 ] };
+ key <AC06> { [ Arabic_alef, Arabic_maddaonalef, 0x1000671 ] };
+ key <AC07> { [ Arabic_teh, Arabic_tehmarbuta, 0x100067c ] };
+ key <AC08> { [ Arabic_noon, 0x10000bb, 0x10006bc ] };
+ key <AC09> { [ Arabic_meem, 0x10000ab, 0x10006ba ] };
+ key <AC10> { [ 0x10006a9, colon, 0x100003b ] };
+ key <AC11> { [ 0x10006af, Arabic_semicolon, 0x10006ab ] };
+
+ key <BKSL> { [ backslash, bar, 0x100003f ] };
+
+ key <AB01> { [ Arabic_zah, 0x10006c9, 0x10006d2] };
+ key <AB02> { [ Arabic_tah, 0x10006c7, 0x1000691 ] };
+ key <AB03> { [ Arabic_zain, 0x1000698, 0x1000696 ] };
+ key <AB04> { [ Arabic_ra, 0x1000625, 0x1000693 ] };
+ key <AB05> { [ Arabic_thal, 0x100200c, 0x1000688 ] };
+ key <AB06> { [ Arabic_dal, 0x1000654, 0x1000689 ] };
+ key <AB07> { [ 0x100067e, Arabic_hamza, 0x1000679 ] };
+ key <AB08> { [ Arabic_waw, greater, 0x100002c ] };
+ key <AB09> { [ period, less ] };
+ key <AB10> { [ slash, Arabic_question_mark, 0x1000655 ] };
+
+ include "nbsp(zwnj2nb3)"
+ include "level3(ralt_switch)"
+};
+
+partial alphanumeric_keys
+xkb_symbols "olpc-ps" {
+
+ name[Group1]= "Afghanistan - OLPC Pashto";
+
+ key <TLDE> { [ 0x100200D, 0x1000654, grave ] }; // zero width joiner, Arabic hamza above
+ key <AE01> { [ 0x10006F1, exclam, asciitilde ] }; // Arabic one
+ key <AE02> { [ 0x10006F2, 0x100066C, at ] }; // Arabic two, Arabic thousands separator
+ key <AE03> { [ 0x10006F3, 0x100066B, numbersign ] }; // Arabic three, Arabic decimal separator
+ key <AE04> { [ 0x10006F4, 0x100060B, dollar ] }; // Arabic four, Afghani sign
+ key <AE05> { [ 0x10006F5, 0x100066A, percent ] }; // Arabic five, Arabic percent sign
+ key <AE06> { [ 0x10006F6, multiply, asciicircum ] }; // Arabic six
+ key <AE07> { [ 0x10006F7, guillemotright, ampersand ] }; // Arabic seven
+ key <AE08> { [ 0x10006F8, guillemotleft, 0x100066D ] }; // Arabic eight, Arabic five-pointed star
+ key <AE09> { [ 0x10006F9, parenright, enfilledcircbullet ] }; // Arabic nine
+ key <AE10> { [ 0x10006F0, parenleft, degree ] }; // Arabic zero
+ key <AE11> { [ minus, 0x1000640, underscore ] }; // Arabic_tatweel
+ key <AE12> { [ plus, equal, division ] };
+
+ key <AD01> { [ 0x1000636, 0x1000652, EuroSign ] }; // Arabic dad, Arabic sukun
+ key <AD02> { [ 0x1000635, 0x100064C, 0x1000671 ] }; // Arabic sad, Arabic dammatan, Arabic alef walsa
+ key <AD03> { [ 0x100062B, 0x100064D, 0x1000649 ] }; // Arabic theh, Arabic kasratan, Arabic alef maksura initial form
+ key <AD04> { [ 0x1000642, 0x100064B, 0x100200E ] }; // Arabic qaf, Arabic fathatan, left-to-right mark
+ key <AD05> { [ 0x1000641, 0x100064F, 0x100200F ] }; // Arabic feh, Arabic damma, right-to-left mark
+ key <AD06> { [ 0x100063A, 0x1000650, 0x100e653 ] }; // Arabic ghain, Arabic kasra, Arabic alef with madda above
+ key <AD07> { [ 0x1000639, 0x100064E, 0x100e659 ] }; // Arabic ain, Arabic fatha, Arabic zwarakay
+ key <AD08> { [ 0x1000647, 0x1000651, 0x1000670 ] }; // Arabic heh, Arabic shadda, Arabic superscript alef
+ key <AD09> { [ 0x100062E, 0x1000681, apostrophe ] }; // Arabic khah, Arabic hah with hamza above,
+ key <AD10> { [ 0x100062D, 0x1000685, quotedbl ] }; // Arabic hah, Arabic hah with three dots above
+ key <AD11> { [ 0x100062C, bracketright, braceleft ] }; // Arabic jeem
+ key <AD12> { [ 0x1000686, bracketleft, braceright ] }; // Arabic tcheh
+
+ key <AC01> { [ 0x1000634, 0x100069A ] }; // Arabic sheen, Arabic seen with dot below and dot above
+ key <AC02> { [ 0x1000633, 0x10006CD ] }; // Arabic seen, Arabic yeh with tail
+ key <AC03> { [ 0x10006CC, 0x100064A, 0x10006D2 ] }; // Farsi yeh, Arabic yeh, Arabic yeh barree
+ key <AC04> { [ 0x1000628, 0x100067E, 0x10006BA ] }; // Arabic beh, Arabic peh, Arabic noon ghunna
+ key <AC05> { [ 0x1000644, 0x1000623, 0x10006B7 ] }; // Arabic lam, Arabic hamza on alef, Arabic alef with hamza above
+ key <AC06> { [ 0x1000627, 0x1000622, 0x1000625 ] }; // Arabic alef, Arabic madda on alef, Arabic alef with hamza below
+ key <AC07> { [ 0x100062A, 0x100067C, 0x1000679 ] }; // Arabic teh, Arabic teh with ring, Arabic tteh
+ key <AC08> { [ 0x1000646, 0x10006BC, greater ] }; // Arabic noon, Arabic noon with ring
+ key <AC09> { [ 0x1000645, 0x1000629, less ] }; // Arabic meem, Arabic teh marbuta
+ key <AC10> { [ 0x10006A9, colon, 0x1000643 ] }; // Arabic keheh, Arabic kaf
+ key <AC11> { [ 0x10006AB, 0x100061B, 0x10006AF ] }; // Arabic kaf with ring, Arabic semicolon, Arabic gaf
+
+ key <BKSL> { [ backslash, asterisk, bar ] };
+
+ key <AB01> { [ 0x1000638, 0x1000626, question] }; // Arabic zah, Arabic yeh with hamza above
+ key <AB02> { [ 0x10006D0, 0x1000637, semicolon ] }; // Arabic tah, Arabic E
+ key <AB03> { [ 0x1000632, 0x1000698 ] }; // Arabic zain, Arabic jeh
+ key <AB04> { [ 0x1000631, 0x1000621 ] }; // Arabic_ra (reh?), Arabic hamza
+ key <AB05> { [ 0x1000630, 0x100200C ] }; // Arabic_thal, zero width non-joiner
+ key <AB06> { [ 0x100062F, 0x1000689, 0x1000688 ] }; // Arabic_dal, Arabic dal with ring, Arabic ddal
+ key <AB07> { [ 0x1000693, 0x1000624, 0x1000691 ] }; // Arabic reh with ring, Arabic waw with hamza above, Arabic rreh
+ key <AB08> { [ 0x1000648, period, comma ] }; // Arabic_waw, Arabic comma
+ key <AB09> { [ 0x1000696, 0x100002E, 0x10006C7 ] }; // Arabic reh with dot below and dot above, full stop, Arabic letter U
+ key <AB10> { [ slash, 0x100061F, 0x10006C9 ] }; // Arabic question mark, Arabic kirghiz yu
+
+ include "nbsp(zwnj2nb3)"
+ include "group(olpc)"
+};
+
+partial alphanumeric_keys
+xkb_symbols "fa-olpc" {
+
+ name[Group1]= "Afghanistan - OLPC Dari";
+
+ key <TLDE> { [ 0x100200D, division, asciitilde ] }; // zero width joiner
+ key <AE01> { [ 0x10006F1, exclam, grave ] }; // Arabic one
+ key <AE02> { [ 0x10006F2, 0x100066C, at ] }; // Arabic two, Arabic thousands separator
+ key <AE03> { [ 0x10006F3, 0x100066B, numbersign ] }; // Arabic three, Arabic decimal separator
+ key <AE04> { [ 0x10006F4, 0x100060B, dollar ] }; // Arabic four, Afghani sign
+ key <AE05> { [ 0x10006F5, 0x100066A, percent ] }; // Arabic five, Arabic percent sign
+ key <AE06> { [ 0x10006F6, multiply, asciicircum ] }; // Arabic six
+ key <AE07> { [ 0x10006F7, 0x100060C, ampersand ] }; // Arabic seven, Arabic comma
+ key <AE08> { [ 0x10006F8, asterisk, enfilledcircbullet ] }; // Arabic eight,
+ key <AE09> { [ 0x10006F9, parenright, 0x100200E ] }; // Arabic nine, left-to-right mark
+ key <AE10> { [ 0x10006F0, parenleft, 0x100200F ] }; // Arabic zero, right-to-left mark
+ key <AE11> { [ minus, 0x1000640, underscore ] }; // Arabic_tatweel
+ key <AE12> { [ plus, equal ] };
+
+ key <AD01> { [ 0x1000636, 0x1000652, degree ] }; // Arabic dad, Arabic sukun
+ key <AD02> { [ 0x1000635, 0x100064C ] }; // Arabic sad, Arabic dammatan
+ key <AD03> { [ 0x100062B, 0x100064D, EuroSign ] }; // Arabic theh, Arabic kasratan
+ key <AD04> { [ 0x1000642, 0x100064B, 0x100FD3E ] }; // Arabic qaf, Arabic fathatan, ornate left paren
+ key <AD05> { [ 0x1000641, 0x100064F, 0x100FD3F ] }; // Arabic feh, Arabic damma, ornate right paren
+ key <AD06> { [ 0x100063A, 0x1000650, 0x1000656 ] }; // Arabic ghain, Arabic kasra, Arabic subscript alef
+ key <AD07> { [ 0x1000639, 0x100064E, 0x100e659 ] }; // Arabic ain, Arabic fatha, Arabic zwarakay
+ key <AD08> { [ 0x1000647, 0x1000651, 0x1000655 ] }; // Arabic heh, Arabic shadda, Arabic hamza below
+ key <AD09> { [ 0x100062E, bracketright, apostrophe ] }; // Arabic khah
+ key <AD10> { [ 0x100062D, bracketleft, quotedbl ] }; // Arabic hah
+ key <AD11> { [ 0x100062C, braceright, 0x1000681 ] }; // Arabic jeem, Arabic hah with hamza above
+ key <AD12> { [ 0x1000686, braceleft, 0x1000685 ] }; // Arabic tcheh, Arabic hah with three dots above
+
+ key <AC01> { [ 0x1000634, 0x1000624, 0x100069A ] }; // Arabic sheen, Arabic waw with hamza above, Arabic seen with dot below and dot above
+ key <AC02> { [ 0x1000633, 0x1000626, 0x10006CD ] }; // Arabic seen, Arabic yeh with hamza above, Arabic yeh with tail
+ key <AC03> { [ 0x10006CC, 0x100064A, 0x1000649 ] }; // Farsi yeh, Arabic yeh, Arabic alef maksura
+ key <AC04> { [ 0x1000628, 0x1000625, 0x10006D0 ] }; // Arabic beh, Arabic alef with hamza below, Arabic e
+ key <AC05> { [ 0x1000644, 0x1000623, 0x10006B7 ] }; // Arabic lam, Arabic hamza on alef, Arabic alef with hamza above
+ key <AC06> { [ 0x1000627, 0x1000622, 0x1000671 ] }; // Arabic alef, Arabic madda on alef, Arabic alef wasla
+ key <AC07> { [ 0x100062A, 0x1000629, 0x100067C ] }; // Arabic teh, Arabic teh marbuta, Arabic tteh
+ key <AC08> { [ 0x1000646, guillemotright, 0x10006BC ] }; // Arabic noon, Arabic noon with ring
+ key <AC09> { [ 0x1000645, guillemotleft, 0x10006BA ] }; // Arabic meem, Arabic noon ghunna
+ key <AC10> { [ 0x10006A9, colon, semicolon ] }; // Arabic keheh,
+ key <AC11> { [ 0x10006AF, 0x100061B, 0x10006AB ] }; // Arabic gaf, Arabic semicolon, Arabic kaf with ring
+
+ key <BKSL> { [ backslash, bar, question ] };
+
+ key <AB01> { [ 0x1000638, 0x1000643, 0x10006D2 ] }; // Arabic zah, Arabic kaf, Arabic yeh barree
+ key <AB02> { [ 0x1000637, 0x1000653, 0x1000691 ] }; // Arabic tah, Arabic maddah above, Arabic rreh
+ key <AB03> { [ 0x1000632, 0x1000698, 0x1000696 ] }; // Arabic zain, Arabic jeh, Arabic reh with dot below and dot above
+ key <AB04> { [ 0x1000631, 0x1000670, 0x1000693 ] }; // Arabic_ra (reh?), Arabic superscript alef, Arabic reh with ring
+ key <AB05> { [ 0x1000630, 0x100200C, 0x1000688 ] }; // Arabic_thal, zero width non-joiner, Arabic ddal
+ key <AB06> { [ 0x100062F, 0x1000654, 0x1000689 ] }; // Arabic dal, Arabic hamza above, Arabic dal with ring
+ key <AB07> { [ 0x100067E, 0x1000621, 0x1000679 ] }; // Arabic peh, Arabic hamza, Arabic tteh
+ key <AB08> { [ 0x1000648, greater, comma ] }; // Arabic_waw
+ key <AB09> { [ period, less, 0x10006C7 ] }; // Arabic u
+ key <AB10> { [ slash, 0x100061F, 0x10006C9 ] }; // Arabic question mark, Arabic kirghiz yu
+
+ include "nbsp(zwnj2nb3)"
+ include "group(olpc)"
+};
+
+partial alphanumeric_keys
+xkb_symbols "uz-olpc" {
+
+ name[Group1]= "Afghanistan - OLPC Southern Uzbek";
+
+ key <TLDE> { [ 0x100200D, division, asciitilde ] }; // zero width joiner
+ key <AE01> { [ 0x10006F1, exclam, grave ] }; // Arabic one
+ key <AE02> { [ 0x10006F2, 0x100066C, at ] }; // Arabic two, Arabic thousands separator
+ key <AE03> { [ 0x10006F3, 0x100066B, numbersign ] }; // Arabic three, Arabic decimal separator
+ key <AE04> { [ 0x10006F4, 0x100060B, dollar ] }; // Arabic four, Afghani sign
+ key <AE05> { [ 0x10006F5, 0x100066A, percent ] }; // Arabic five, Arabic percent sign
+ key <AE06> { [ 0x10006F6, multiply, asciicircum ] }; // Arabic six
+ key <AE07> { [ 0x10006F7, 0x100060C, ampersand ] }; // Arabic seven, Arabic comma
+ key <AE08> { [ 0x10006F8, asterisk, enfilledcircbullet ] }; // Arabic eight,
+ key <AE09> { [ 0x10006F9, parenright, 0x100200E ] }; // Arabic nine, left-to-right mark
+ key <AE10> { [ 0x10006F0, parenleft, 0x100200F ] }; // Arabic zero, right-to-left mark
+ key <AE11> { [ minus, 0x1000640, underscore ] }; // Arabic_tatweel
+ key <AE12> { [ plus, equal ] };
+
+ key <AD01> { [ 0x1000636, 0x1000652, degree ] }; // Arabic dad, Arabic sukun
+ key <AD02> { [ 0x1000635, 0x100064C, 0x1000653 ] }; // Arabic sad, Arabic dammatan, Arabic maddah above
+ key <AD03> { [ 0x100062B, 0x100064D, EuroSign ] }; // Arabic theh, Arabic kasratan
+ key <AD04> { [ 0x1000642, 0x100064B, 0x100FD3E ] }; // Arabic qaf, Arabic fathatan, ornate left paren
+ key <AD05> { [ 0x1000641, 0x100064F, 0x100FD3F ] }; // Arabic feh, Arabic damma, ornate right paren
+ key <AD06> { [ 0x100063A, 0x1000650, 0x1000656 ] }; // Arabic ghain, Arabic kasra, Arabic subscript alef
+ key <AD07> { [ 0x1000639, 0x100064E, 0x100e659 ] }; // Arabic ain, Arabic fatha, Arabic zwarakay
+ key <AD08> { [ 0x1000647, 0x1000651, 0x1000670 ] }; // Arabic heh, Arabic shadda, Arabic superscript alef
+ key <AD09> { [ 0x100062E, bracketright, apostrophe ] }; // Arabic khah
+ key <AD10> { [ 0x100062D, bracketleft, quotedbl ] }; // Arabic hah
+ key <AD11> { [ 0x100062C, braceright, 0x1000681 ] }; // Arabic jeem, Arabic hah with hamza above
+ key <AD12> { [ 0x1000686, braceleft, 0x1000685 ] }; // Arabic tcheh, Arabic hah with three dots above
+
+ key <AC01> { [ 0x1000634, 0x1000624, 0x100069A ] }; // Arabic sheen, Arabic waw with hamza above, Arabic seen with dot below and dot above
+ key <AC02> { [ 0x1000633, 0x1000626, 0x10006CD ] }; // Arabic seen, Arabic yeh with hamza above, Arabic yeh with tail
+ key <AC03> { [ 0x10006CC, 0x100064A, 0x1000649 ] }; // Farsi yeh, Arabic yeh, Arabic alef maksura
+ key <AC04> { [ 0x1000628, 0x10006D0, 0x1000643 ] }; // Arabic beh, Arabic e, Arabic kaf
+ key <AC05> { [ 0x1000644, 0x1000623, 0x10006B7 ] }; // Arabic lam, Arabic hamza on alef, Arabic alef with hamza above
+ key <AC06> { [ 0x1000627, 0x1000622, 0x1000671 ] }; // Arabic alef, Arabic madda on alef, Arabic alef wasla
+ key <AC07> { [ 0x100062A, 0x1000629, 0x100067C ] }; // Arabic teh, Arabic teh marbuta, Arabic tteh
+ key <AC08> { [ 0x1000646, guillemotright, 0x10006BC ] }; // Arabic noon, Arabic noon with ring
+ key <AC09> { [ 0x1000645, guillemotleft, 0x10006BA ] }; // Arabic meem, Arabic noon ghunna
+ key <AC10> { [ 0x10006A9, colon, semicolon ] }; // Arabic keheh,
+ key <AC11> { [ 0x10006AF, 0x100061B, 0x10006AB ] }; // Arabic gaf, Arabic semicolon, Arabic kaf with ring
+
+ key <BKSL> { [ backslash, bar, question ] };
+
+ key <AB01> { [ 0x1000638, 0x10006C9, 0x10006D2 ] }; // Arabic zah, Arabic kirghiz yu, Arabic yeh barree
+ key <AB02> { [ 0x1000637, 0x10006C7, 0x1000691 ] }; // Arabic tah, Arabic u, Arabic rreh
+ key <AB03> { [ 0x1000632, 0x1000698, 0x1000696 ] }; // Arabic zain, Arabic jeh, Arabic reh with dot below and dot above
+ key <AB04> { [ 0x1000631, 0x1000625, 0x1000693 ] }; // Arabic_ra (reh?), Arabic alef with hamza below, Arabic reh with ring
+ key <AB05> { [ 0x1000630, 0x100200C, 0x1000688 ] }; // Arabic_thal, zero width non-joiner, Arabic ddal
+ key <AB06> { [ 0x100062F, 0x1000654, 0x1000689 ] }; // Arabic dal, Arabic hamza above, Arabic dal with ring
+ key <AB07> { [ 0x100067E, 0x1000621, 0x1000679 ] }; // Arabic peh, Arabic hamza, Arabic tteh
+ key <AB08> { [ 0x1000648, greater, comma ] }; // Arabic_waw
+ key <AB09> { [ period, less ] };
+ key <AB10> { [ slash, 0x100061F, 0x1000655 ] }; // Arabic question mark, Arabic hamza below
+
+ include "nbsp(zwnj2nb3)"
+ include "group(olpc)"
+};
diff --git a/xorg-server/xkeyboard-config/symbols/capslock b/xorg-server/xkeyboard-config/symbols/capslock index 3e0880573..6daf5c1ed 100644 --- a/xorg-server/xkeyboard-config/symbols/capslock +++ b/xorg-server/xkeyboard-config/symbols/capslock @@ -1,74 +1,74 @@ -default partial hidden modifier_keys -xkb_symbols "capslock" { - replace key <CAPS> { [ Caps_Lock ] }; - modifier_map Lock { Caps_Lock }; -}; - -partial hidden modifier_keys -xkb_symbols "shiftlock" { - replace key <CAPS> { [ Shift_Lock ] }; - modifier_map Shift { Shift_Lock }; -}; - -partial hidden modifier_keys -xkb_symbols "grouplock" { - replace key <CAPS> { [ ISO_Next_Group, Caps_Lock ] }; -}; - -partial hidden modifier_keys -xkb_symbols "swapescape" { - key <CAPS> { [ Escape ] }; - key <ESC> { [ Caps_Lock ] }; -}; - -partial hidden modifier_keys -xkb_symbols "groupshift" { - key <CAPS> { - type[Group1]="PC_ALT_LEVEL2", - [ Mode_switch, Caps_Lock ] - }; -}; - -partial hidden modifier_keys -xkb_symbols "escape" { - key <CAPS> { [ Escape ] }; -}; - -partial hidden modifier_keys -xkb_symbols "backspace" { - key <CAPS> { [ BackSpace ] }; -}; - -partial hidden modifier_keys -xkb_symbols "super" { - key <CAPS> { [ Super_L ] }; - modifier_map Mod4 { <CAPS> }; -}; - -partial hidden modifier_keys -xkb_symbols "hyper" { - key <CAPS> { [ Hyper_L ] }; - modifier_map Mod4 { <CAPS> }; -}; - -partial hidden modifier_keys -xkb_symbols "none" { - key <CAPS> { [ VoidSymbol ] }; -}; - -partial hidden modifier_keys -xkb_symbols "numlock" { - key <CAPS> { [ Num_Lock ] }; -}; - -// This changes the modifier behavior of the <CAPS> key. -// The keysym will be reset to Caps_Lock -partial hidden modifier_keys -xkb_symbols "ctrl_modifier" { - replace key <CAPS> { - type[Group1] = "ONE_LEVEL", - symbols[Group1] = [ Caps_Lock ], - actions[Group1] = [ SetMods(modifiers=Control) ] - }; - modifier_map Control { <CAPS> }; -}; +default partial hidden modifier_keys
+xkb_symbols "capslock" {
+ replace key <CAPS> { [ Caps_Lock ] };
+ modifier_map Lock { Caps_Lock };
+};
+
+partial hidden modifier_keys
+xkb_symbols "shiftlock" {
+ replace key <CAPS> { [ Shift_Lock ] };
+ modifier_map Shift { Shift_Lock };
+};
+
+partial hidden modifier_keys
+xkb_symbols "grouplock" {
+ replace key <CAPS> { [ ISO_Next_Group, Caps_Lock ] };
+};
+
+partial hidden modifier_keys
+xkb_symbols "swapescape" {
+ key <CAPS> { [ Escape ] };
+ key <ESC> { [ Caps_Lock ] };
+};
+
+partial hidden modifier_keys
+xkb_symbols "groupshift" {
+ key <CAPS> {
+ type[Group1]="PC_ALT_LEVEL2",
+ [ Mode_switch, Caps_Lock ]
+ };
+};
+
+partial hidden modifier_keys
+xkb_symbols "escape" {
+ key <CAPS> { [ Escape ] };
+};
+
+partial hidden modifier_keys
+xkb_symbols "backspace" {
+ key <CAPS> { [ BackSpace ] };
+};
+
+partial hidden modifier_keys
+xkb_symbols "super" {
+ key <CAPS> { [ Super_L ] };
+ modifier_map Mod4 { <CAPS> };
+};
+
+partial hidden modifier_keys
+xkb_symbols "hyper" {
+ key <CAPS> { [ Hyper_L ] };
+ modifier_map Mod4 { <CAPS> };
+};
+
+partial hidden modifier_keys
+xkb_symbols "none" {
+ key <CAPS> { [ VoidSymbol ] };
+};
+
+partial hidden modifier_keys
+xkb_symbols "numlock" {
+ key <CAPS> { [ Num_Lock ] };
+};
+
+// This changes the modifier behavior of the <CAPS> key.
+// The keysym will be reset to Caps_Lock
+partial hidden modifier_keys
+xkb_symbols "ctrl_modifier" {
+ replace key <CAPS> {
+ type[Group1] = "ONE_LEVEL",
+ symbols[Group1] = [ Caps_Lock ],
+ actions[Group1] = [ SetMods(modifiers=Control) ]
+ };
+ modifier_map Control { <CAPS> };
+};
diff --git a/xorg-server/xkeyboard-config/symbols/cd b/xorg-server/xkeyboard-config/symbols/cd.in index 8a12a384e..8a12a384e 100644 --- a/xorg-server/xkeyboard-config/symbols/cd +++ b/xorg-server/xkeyboard-config/symbols/cd.in diff --git a/xorg-server/xkeyboard-config/symbols/digital_vndr/makefile b/xorg-server/xkeyboard-config/symbols/digital_vndr/makefile new file mode 100644 index 000000000..cdfa2ef28 --- /dev/null +++ b/xorg-server/xkeyboard-config/symbols/digital_vndr/makefile @@ -0,0 +1,13 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\symbols\digital_vndr + +dist_symbols_DATA = \ +lk pc us \ +vt + +DATA_FILES=$(dist_symbols_DATA:%=$(DESTDIR)\%) + +include ..\..\xkbrules.mak diff --git a/xorg-server/xkeyboard-config/symbols/es b/xorg-server/xkeyboard-config/symbols/es index 88b390d97..7f92d8767 100644 --- a/xorg-server/xkeyboard-config/symbols/es +++ b/xorg-server/xkeyboard-config/symbols/es @@ -1,217 +1,217 @@ -// based on a keyboard -// Modified for a real Spanish Keyboard by Jon Tombs -// - -partial default alphanumeric_keys -xkb_symbols "basic" { - - include "latin(type4)" - - name[Group1]="Spain"; - - key <AE01> { [ 1, exclam, bar, exclamdown ] }; - key <AE03> { [ 3, periodcentered, numbersign, sterling ] }; - key <AE04> { [ 4, dollar, asciitilde, dollar ] }; - key <AE06> { [ 6, ampersand, notsign, fiveeighths ] }; - key <AE11> { [apostrophe, question, backslash, questiondown ] }; - key <AE12> { [exclamdown, questiondown, dead_tilde, asciitilde ] }; - - key <AD11> { [dead_grave, dead_circumflex, bracketleft, dead_abovering ] }; - key <AD12> { [ plus, asterisk, bracketright, dead_macron ] }; - - key <AC10> { [ ntilde, Ntilde, asciitilde, dead_doubleacute ] }; - key <AC11> { [dead_acute, dead_diaeresis, braceleft, braceleft ] }; - key <TLDE> { [ masculine, ordfeminine, backslash, backslash ] }; - - key <BKSL> { [ ccedilla, Ccedilla, braceright, dead_breve ] }; - - include "level3(ralt_switch)" -}; - -partial alphanumeric_keys -xkb_symbols "Sundeadkeys" { - - include "es(basic)" - - key <AC11> { [dead_acute, dead_diaeresis, braceleft, braceleft ] }; - key <AD11> { [dead_grave, dead_circumflex, bracketleft, dead_abovering ] }; -}; - -partial alphanumeric_keys -xkb_symbols "sundeadkeys" { - - include "es(Sundeadkeys)" - - name[Group1]="Spain - Sun dead keys"; -}; - -partial alphanumeric_keys -xkb_symbols "nodeadkeys" { - - include "es(basic)" - - name[Group1]="Spain - Eliminate dead keys"; - - key <AD11> { [ grave, asciicircum, bracketleft, degree ] }; - key <AD12> { [ plus, asterisk, bracketright, macron ] }; - key <AC10> { [ ntilde, Ntilde, asciitilde, doubleacute ] }; - key <AC11> { [ acute, diaeresis, braceleft, braceleft ] }; - key <BKSL> { [ ccedilla, Ccedilla, braceright, breve ] }; - key <AB10> { [ minus, underscore, dead_belowdot, abovedot ] }; -}; - -// Spanish mapping (note R-H exchange) -partial alphanumeric_keys -xkb_symbols "dvorak" { - - name[Group1]="Spain - Dvorak"; - - // Alphanumeric section - key <TLDE> {[ masculine, ordfeminine, backslash, degree ]}; - key <AE01> {[ 1, exclam, bar, onesuperior ]}; - key <AE02> {[ 2, quotedbl, at, twosuperior ]}; - key <AE03> {[ 3, periodcentered, numbersign, threesuperior ]}; - key <AE04> {[ 4, dollar, asciitilde, onequarter ]}; - key <AE05> {[ 5, percent, brokenbar, fiveeighths ]}; - key <AE06> {[ 6, ampersand, notsign, threequarters ]}; - key <AE07> {[ 7, slash, onehalf, seveneighths ]}; - key <AE08> {[ 8, parenleft, oneeighth, threeeighths ]}; - key <AE09> {[ 9, parenright, asciicircum ]}; - key <AE10> {[ 0, equal, grave, dead_doubleacute ]}; - key <AE11> {[ apostrophe, question, dead_macron, dead_ogonek ]}; - key <AE12> {[ exclamdown, questiondown, dead_breve, dead_abovedot ]}; - - key <AD01> {[ period, colon ]}; - key <AD02> {[ comma, semicolon ]}; - key <AD03> {[ ntilde, Ntilde, lstroke, Lstroke ]}; - key <AD04> {[ p, P, paragraph ]}; - key <AD05> {[ y, Y, yen ]}; - key <AD06> {[ f, F, tslash, Tslash ]}; - key <AD07> {[ g, G, dstroke, Dstroke ]}; - key <AD08> {[ c, C, cent, copyright ]}; - key <AD09> {[ h, H, hstroke, Hstroke ]}; - key <AD10> {[ l, L, sterling ]}; - key <AD11> {[ dead_grave, dead_circumflex, bracketleft, dead_caron ]}; - key <AD12> {[ plus, asterisk, bracketright, plusminus ]}; - - key <AC01> {[ a, A, ae, AE ]}; - key <AC02> {[ o, O, oslash, Oslash ]}; - key <AC03> {[ e, E, EuroSign ]}; - key <AC04> {[ u, U, aring, Aring ]}; - key <AC05> {[ i, I, oe, OE ]}; - key <AC06> {[ d, D, eth, ETH ]}; - key <AC07> {[ r, R, registered, trademark ]}; - key <AC08> {[ t, T, thorn, THORN ]}; - key <AC09> {[ n, N, eng, ENG ]}; - key <AC10> {[ s, S, ssharp, section ]}; - key <AC11> {[ dead_acute, dead_diaeresis, braceleft, dead_tilde ]}; - key <BKSL> {[ ccedilla, Ccedilla, braceright, dead_cedilla ]}; - - key <LSGT> {[ less, greater, guillemotleft, guillemotright ]}; - key <AB01> {[ minus, underscore, hyphen, macron ]}; - key <AB02> {[ q, Q, currency ]}; - key <AB03> {[ j, J ]}; - key <AB04> {[ k, K, kra ]}; - key <AB05> {[ x, X, multiply, division ]}; - key <AB06> {[ b, B ]}; - key <AB07> {[ m, M, mu ]}; - key <AB08> {[ w, W ]}; - key <AB09> {[ v, V ]}; - key <AB10> {[ z, Z ]}; - - include "level3(ralt_switch)" -}; - -partial alphanumeric_keys -xkb_symbols "cat" { - - include "es(basic)" - - name[Group1]="Spain - Catalan variant with middle-dot L"; - - key <AC09> { [ l, L, 0x1000140, 0x100013F ] }; -}; - -partial alphanumeric_keys -xkb_symbols "ast" { - - include "es(basic)" - - name[Group1]="Spain - Asturian variant with bottom-dot H and bottom-dot L"; - - key <AC06> { [ h, H, 0x1001E25, 0x1001E24 ] }; - key <AC09> { [ l, L, 0x1001E37, 0x1001E36 ] }; -}; - -// Copied from macintosh_vndr/es -partial alphanumeric_keys -xkb_symbols "mac" { - - // Describes the differences between a very simple mac_US - // keyboard and a very simple Spanish keybaord - - include "es" - name[Group1]= "Spain - Macintosh"; - -}; - -partial alphanumeric_keys -xkb_symbols "olpc" { - - include "us(basic)" - name[Group1]="Spain"; - - key <TLDE> { [ masculine, ordfeminine ] }; - key <AE01> { [ 1, exclam, bar ] }; - key <AE02> { [ 2, quotedbl, at ] }; - key <AE03> { [ 3, dead_grave, numbersign, grave ] }; - key <AE05> { [ 5, percent, asciicircum, dead_circumflex ] }; - key <AE06> { [ 6, ampersand, notsign ] }; - key <AE07> { [ 7, slash, backslash ] }; - key <AE08> { [ 8, parenleft ] }; - key <AE09> { [ 9, parenright ] }; - key <AE10> { [ 0, equal ] }; - key <AE11> { [ apostrophe, question ] }; - key <AE12> { [ exclamdown, questiondown ] }; - - key <AD03> { [ e, E, EuroSign ] }; - key <AD11> { [ dead_acute, dead_diaeresis, acute, dead_abovering ] }; - key <AD12> { [ bracketleft, braceleft ] }; - - key <AC10> { [ ntilde, Ntilde ] }; - key <AC11> { [ plus, asterisk, dead_tilde ] }; - key <BKSL> { [ bracketright, braceright, section ] }; - - key <AB08> { [ comma, semicolon ] }; - key <AB09> { [ period, colon ] }; - key <AB10> { [ minus, underscore ] }; - - key <I219> { [ less, greater, ISO_Next_Group ] }; - - include "level3(ralt_switch)" -}; - -partial alphanumeric_keys -xkb_symbols "deadtilde" { - - include "es(basic)" - - name[Group1]="Spain - Include dead tilde"; - - key <AE04> { [ 4, dollar, dead_tilde, dollar ] }; -}; - -partial alphanumeric_keys -xkb_symbols "olpc2" { - - // Modified variant of US International layout, specifically for Peru - // Contact: Sayamindu Dasgupta <sayamindu@laptop.org> - - include "us(olpc)" - name[Group1]="Spain - OLPC2"; - - key <AE03> { [ 3, numbersign, dead_grave, dead_grave] }; // combining grave - key <I236> { [ XF86Start ] }; - - include "level3(ralt_switch)" -}; +// based on a keyboard
+// Modified for a real Spanish Keyboard by Jon Tombs
+//
+
+partial default alphanumeric_keys
+xkb_symbols "basic" {
+
+ include "latin(type4)"
+
+ name[Group1]="Spain";
+
+ key <AE01> { [ 1, exclam, bar, exclamdown ] };
+ key <AE03> { [ 3, periodcentered, numbersign, sterling ] };
+ key <AE04> { [ 4, dollar, asciitilde, dollar ] };
+ key <AE06> { [ 6, ampersand, notsign, fiveeighths ] };
+ key <AE11> { [apostrophe, question, backslash, questiondown ] };
+ key <AE12> { [exclamdown, questiondown, dead_tilde, asciitilde ] };
+
+ key <AD11> { [dead_grave, dead_circumflex, bracketleft, dead_abovering ] };
+ key <AD12> { [ plus, asterisk, bracketright, dead_macron ] };
+
+ key <AC10> { [ ntilde, Ntilde, asciitilde, dead_doubleacute ] };
+ key <AC11> { [dead_acute, dead_diaeresis, braceleft, braceleft ] };
+ key <TLDE> { [ masculine, ordfeminine, backslash, backslash ] };
+
+ key <BKSL> { [ ccedilla, Ccedilla, braceright, dead_breve ] };
+
+ include "level3(ralt_switch)"
+};
+
+partial alphanumeric_keys
+xkb_symbols "Sundeadkeys" {
+
+ include "es(basic)"
+
+ key <AC11> { [dead_acute, dead_diaeresis, braceleft, braceleft ] };
+ key <AD11> { [dead_grave, dead_circumflex, bracketleft, dead_abovering ] };
+};
+
+partial alphanumeric_keys
+xkb_symbols "sundeadkeys" {
+
+ include "es(Sundeadkeys)"
+
+ name[Group1]="Spain - Sun dead keys";
+};
+
+partial alphanumeric_keys
+xkb_symbols "nodeadkeys" {
+
+ include "es(basic)"
+
+ name[Group1]="Spain - Eliminate dead keys";
+
+ key <AD11> { [ grave, asciicircum, bracketleft, degree ] };
+ key <AD12> { [ plus, asterisk, bracketright, macron ] };
+ key <AC10> { [ ntilde, Ntilde, asciitilde, doubleacute ] };
+ key <AC11> { [ acute, diaeresis, braceleft, braceleft ] };
+ key <BKSL> { [ ccedilla, Ccedilla, braceright, breve ] };
+ key <AB10> { [ minus, underscore, dead_belowdot, abovedot ] };
+};
+
+// Spanish mapping (note R-H exchange)
+partial alphanumeric_keys
+xkb_symbols "dvorak" {
+
+ name[Group1]="Spain - Dvorak";
+
+ // Alphanumeric section
+ key <TLDE> {[ masculine, ordfeminine, backslash, degree ]};
+ key <AE01> {[ 1, exclam, bar, onesuperior ]};
+ key <AE02> {[ 2, quotedbl, at, twosuperior ]};
+ key <AE03> {[ 3, periodcentered, numbersign, threesuperior ]};
+ key <AE04> {[ 4, dollar, asciitilde, onequarter ]};
+ key <AE05> {[ 5, percent, brokenbar, fiveeighths ]};
+ key <AE06> {[ 6, ampersand, notsign, threequarters ]};
+ key <AE07> {[ 7, slash, onehalf, seveneighths ]};
+ key <AE08> {[ 8, parenleft, oneeighth, threeeighths ]};
+ key <AE09> {[ 9, parenright, asciicircum ]};
+ key <AE10> {[ 0, equal, grave, dead_doubleacute ]};
+ key <AE11> {[ apostrophe, question, dead_macron, dead_ogonek ]};
+ key <AE12> {[ exclamdown, questiondown, dead_breve, dead_abovedot ]};
+
+ key <AD01> {[ period, colon ]};
+ key <AD02> {[ comma, semicolon ]};
+ key <AD03> {[ ntilde, Ntilde, lstroke, Lstroke ]};
+ key <AD04> {[ p, P, paragraph ]};
+ key <AD05> {[ y, Y, yen ]};
+ key <AD06> {[ f, F, tslash, Tslash ]};
+ key <AD07> {[ g, G, dstroke, Dstroke ]};
+ key <AD08> {[ c, C, cent, copyright ]};
+ key <AD09> {[ h, H, hstroke, Hstroke ]};
+ key <AD10> {[ l, L, sterling ]};
+ key <AD11> {[ dead_grave, dead_circumflex, bracketleft, dead_caron ]};
+ key <AD12> {[ plus, asterisk, bracketright, plusminus ]};
+
+ key <AC01> {[ a, A, ae, AE ]};
+ key <AC02> {[ o, O, oslash, Oslash ]};
+ key <AC03> {[ e, E, EuroSign ]};
+ key <AC04> {[ u, U, aring, Aring ]};
+ key <AC05> {[ i, I, oe, OE ]};
+ key <AC06> {[ d, D, eth, ETH ]};
+ key <AC07> {[ r, R, registered, trademark ]};
+ key <AC08> {[ t, T, thorn, THORN ]};
+ key <AC09> {[ n, N, eng, ENG ]};
+ key <AC10> {[ s, S, ssharp, section ]};
+ key <AC11> {[ dead_acute, dead_diaeresis, braceleft, dead_tilde ]};
+ key <BKSL> {[ ccedilla, Ccedilla, braceright, dead_cedilla ]};
+
+ key <LSGT> {[ less, greater, guillemotleft, guillemotright ]};
+ key <AB01> {[ minus, underscore, hyphen, macron ]};
+ key <AB02> {[ q, Q, currency ]};
+ key <AB03> {[ j, J ]};
+ key <AB04> {[ k, K, kra ]};
+ key <AB05> {[ x, X, multiply, division ]};
+ key <AB06> {[ b, B ]};
+ key <AB07> {[ m, M, mu ]};
+ key <AB08> {[ w, W ]};
+ key <AB09> {[ v, V ]};
+ key <AB10> {[ z, Z ]};
+
+ include "level3(ralt_switch)"
+};
+
+partial alphanumeric_keys
+xkb_symbols "cat" {
+
+ include "es(basic)"
+
+ name[Group1]="Spain - Catalan variant with middle-dot L";
+
+ key <AC09> { [ l, L, 0x1000140, 0x100013F ] };
+};
+
+partial alphanumeric_keys
+xkb_symbols "ast" {
+
+ include "es(basic)"
+
+ name[Group1]="Spain - Asturian variant with bottom-dot H and bottom-dot L";
+
+ key <AC06> { [ h, H, 0x1001E25, 0x1001E24 ] };
+ key <AC09> { [ l, L, 0x1001E37, 0x1001E36 ] };
+};
+
+// Copied from macintosh_vndr/es
+partial alphanumeric_keys
+xkb_symbols "mac" {
+
+ // Describes the differences between a very simple mac_US
+ // keyboard and a very simple Spanish keybaord
+
+ include "es"
+ name[Group1]= "Spain - Macintosh";
+
+};
+
+partial alphanumeric_keys
+xkb_symbols "olpc" {
+
+ include "us(basic)"
+ name[Group1]="Spain";
+
+ key <TLDE> { [ masculine, ordfeminine ] };
+ key <AE01> { [ 1, exclam, bar ] };
+ key <AE02> { [ 2, quotedbl, at ] };
+ key <AE03> { [ 3, dead_grave, numbersign, grave ] };
+ key <AE05> { [ 5, percent, asciicircum, dead_circumflex ] };
+ key <AE06> { [ 6, ampersand, notsign ] };
+ key <AE07> { [ 7, slash, backslash ] };
+ key <AE08> { [ 8, parenleft ] };
+ key <AE09> { [ 9, parenright ] };
+ key <AE10> { [ 0, equal ] };
+ key <AE11> { [ apostrophe, question ] };
+ key <AE12> { [ exclamdown, questiondown ] };
+
+ key <AD03> { [ e, E, EuroSign ] };
+ key <AD11> { [ dead_acute, dead_diaeresis, acute, dead_abovering ] };
+ key <AD12> { [ bracketleft, braceleft ] };
+
+ key <AC10> { [ ntilde, Ntilde ] };
+ key <AC11> { [ plus, asterisk, dead_tilde ] };
+ key <BKSL> { [ bracketright, braceright, section ] };
+
+ key <AB08> { [ comma, semicolon ] };
+ key <AB09> { [ period, colon ] };
+ key <AB10> { [ minus, underscore ] };
+
+ key <I219> { [ less, greater, ISO_Next_Group ] };
+
+ include "level3(ralt_switch)"
+};
+
+partial alphanumeric_keys
+xkb_symbols "deadtilde" {
+
+ include "es(basic)"
+
+ name[Group1]="Spain - Include dead tilde";
+
+ key <AE04> { [ 4, dollar, dead_tilde, dollar ] };
+};
+
+partial alphanumeric_keys
+xkb_symbols "olpc2" {
+
+ // Modified variant of US International layout, specifically for Peru
+ // Contact: Sayamindu Dasgupta <sayamindu@laptop.org>
+
+ include "us(olpc)"
+ name[Group1]="Spain - OLPC2";
+
+ key <AE03> { [ 3, numbersign, dead_grave, dead_grave] }; // combining grave
+ key <I236> { [ XF86Start ] };
+
+ include "level3(ralt_switch)"
+};
diff --git a/xorg-server/xkeyboard-config/symbols/et b/xorg-server/xkeyboard-config/symbols/et index 7d15967e2..e1530c2ad 100644 --- a/xorg-server/xkeyboard-config/symbols/et +++ b/xorg-server/xkeyboard-config/symbols/et @@ -1,73 +1,73 @@ -// -// Ethiopia -// Designed as a part of OLPC project -// -// 2007 Sergey Udaltsov <svu@gnome.org> -// - -partial default alphanumeric_keys -xkb_symbols "basic" { - include "et(olpc)" - name[Group1]="Ethiopia"; -}; - -partial alphanumeric_keys -xkb_symbols "olpc" { - - name[Group1]="Ethiopia"; - - key <AE01> { [ 0x01001369, 0x01001372 ] }; // 1 - key <AE02> { [ 0x0100136a, 0x01001373 ] }; // 2 - key <AE03> { [ 0x0100136b, 0x01001374 ] }; // 3 - key <AE04> { [ 0x0100136c, 0x01001375 ] }; // 4 - key <AE05> { [ 0x0100136d, 0x01001376 ] }; // 5 - key <AE06> { [ 0x0100136e, 0x01001377 ] }; // 6 - key <AE07> { [ 0x0100136f, 0x01001378 ] }; // 7 - key <AE08> { [ 0x01001370, 0x01001379 ] }; // 8 - key <AE09> { [ 0x01001371, 0x0100137a ] }; // 9 - key <AE10> { [ 0x0100137b, 0x0100137c ] }; // 0 - key <AE11> { [ minus, underscore ] }; // -_ - key <AE12> { [ equal, plus ] }; // =+ - - key <AD01> { [ 0x01001240, 0x01001250 ] }; // q - key <AD02> { [ 0x010012C8, VoidSymbol ] }; // w - key <AD03> { [ 0x0100FE69, 0x0100FE70 ] }; // dead e - key <AD04> { [ 0x01001228, VoidSymbol ] }; // r - key <AD05> { [ 0x01001270, 0x01001320 ] }; // t - key <AD06> { [ 0x010012E8, VoidSymbol ] }; // y - key <AD07> { [ 0x0100FE75, 0x0100FE76 ] }; // dead u - key <AD08> { [ 0x0100FE71, 0x0100FE72 ] }; // dead i - key <AD09> { [ 0x0100FE73, 0x0100FE74 ] }; // dead o - key <AD10> { [ 0x01001350, 0x01001330 ] }; // p - key <AD11> { [ 0x01001340, 0x01001338 ] }; // [ - key <AD12> { [ 0x01001328, 0x01001280 ] }; // ] - - key <AC01> { [ 0x0100FE67, 0x0100FE68 ] }; // dead a - key <AC02> { [ 0x01001230, 0x01001220 ] }; // s - key <AC03> { [ 0x010012F0, 0x010012F8 ] }; // d - key <AC04> { [ 0x01001348, VoidSymbol ] }; // f - key <AC05> { [ 0x01001308, 0x01001318 ] }; // g - key <AC06> { [ 0x01001200, 0x01001210 ] }; // h - key <AC07> { [ 0x01001300, VoidSymbol ] }; // j - key <AC08> { [ 0x010012A8, 0x010012B8 ] }; // k - key <AC09> { [ 0x01001208, VoidSymbol ] }; // l - - key <AC10> { [ 0x01001362, 0x01001361 ] }; // :; - key <AC11> { [ 0x01001366, 0x01001365 ] }; // '" - - key <AB01> { [ 0x010012D8, 0x010012E0 ] }; // z - key <AB02> { [ 0x010012A0, 0x010012D0 ] }; // x - key <AB03> { [ 0x01001278, 0x0100FE78 ] }; // c - key <AB04> { [ 0x01001238, 0x01001268 ] }; // v - key <AB05> { [ 0x01001260, VoidSymbol ] }; // b - key <AB06> { [ 0x01001290, 0x01001298 ] }; // n - key <AB07> { [ 0x01001218, VoidSymbol ] }; // m - - key <AB08> { [ 0x01001363, VoidSymbol ] }; // < - key <AB09> { [ 0x01001364, VoidSymbol ] }; // > - key <AB10> { [ 0x01001367, question ] }; // ? - - key <BKSL> { [ VoidSymbol, 0x01002010 ] }; // bksl - - include "group(olpc)" -}; +//
+// Ethiopia
+// Designed as a part of OLPC project
+//
+// 2007 Sergey Udaltsov <svu@gnome.org>
+//
+
+partial default alphanumeric_keys
+xkb_symbols "basic" {
+ include "et(olpc)"
+ name[Group1]="Ethiopia";
+};
+
+partial alphanumeric_keys
+xkb_symbols "olpc" {
+
+ name[Group1]="Ethiopia";
+
+ key <AE01> { [ 0x01001369, 0x01001372 ] }; // 1
+ key <AE02> { [ 0x0100136a, 0x01001373 ] }; // 2
+ key <AE03> { [ 0x0100136b, 0x01001374 ] }; // 3
+ key <AE04> { [ 0x0100136c, 0x01001375 ] }; // 4
+ key <AE05> { [ 0x0100136d, 0x01001376 ] }; // 5
+ key <AE06> { [ 0x0100136e, 0x01001377 ] }; // 6
+ key <AE07> { [ 0x0100136f, 0x01001378 ] }; // 7
+ key <AE08> { [ 0x01001370, 0x01001379 ] }; // 8
+ key <AE09> { [ 0x01001371, 0x0100137a ] }; // 9
+ key <AE10> { [ 0x0100137b, 0x0100137c ] }; // 0
+ key <AE11> { [ minus, underscore ] }; // -_
+ key <AE12> { [ equal, plus ] }; // =+
+
+ key <AD01> { [ 0x01001240, 0x01001250 ] }; // q
+ key <AD02> { [ 0x010012C8, VoidSymbol ] }; // w
+ key <AD03> { [ 0x0100FE69, 0x0100FE70 ] }; // dead e
+ key <AD04> { [ 0x01001228, VoidSymbol ] }; // r
+ key <AD05> { [ 0x01001270, 0x01001320 ] }; // t
+ key <AD06> { [ 0x010012E8, VoidSymbol ] }; // y
+ key <AD07> { [ 0x0100FE75, 0x0100FE76 ] }; // dead u
+ key <AD08> { [ 0x0100FE71, 0x0100FE72 ] }; // dead i
+ key <AD09> { [ 0x0100FE73, 0x0100FE74 ] }; // dead o
+ key <AD10> { [ 0x01001350, 0x01001330 ] }; // p
+ key <AD11> { [ 0x01001340, 0x01001338 ] }; // [
+ key <AD12> { [ 0x01001328, 0x01001280 ] }; // ]
+
+ key <AC01> { [ 0x0100FE67, 0x0100FE68 ] }; // dead a
+ key <AC02> { [ 0x01001230, 0x01001220 ] }; // s
+ key <AC03> { [ 0x010012F0, 0x010012F8 ] }; // d
+ key <AC04> { [ 0x01001348, VoidSymbol ] }; // f
+ key <AC05> { [ 0x01001308, 0x01001318 ] }; // g
+ key <AC06> { [ 0x01001200, 0x01001210 ] }; // h
+ key <AC07> { [ 0x01001300, VoidSymbol ] }; // j
+ key <AC08> { [ 0x010012A8, 0x010012B8 ] }; // k
+ key <AC09> { [ 0x01001208, VoidSymbol ] }; // l
+
+ key <AC10> { [ 0x01001362, 0x01001361 ] }; // :;
+ key <AC11> { [ 0x01001366, 0x01001365 ] }; // '"
+
+ key <AB01> { [ 0x010012D8, 0x010012E0 ] }; // z
+ key <AB02> { [ 0x010012A0, 0x010012D0 ] }; // x
+ key <AB03> { [ 0x01001278, 0x0100FE78 ] }; // c
+ key <AB04> { [ 0x01001238, 0x01001268 ] }; // v
+ key <AB05> { [ 0x01001260, VoidSymbol ] }; // b
+ key <AB06> { [ 0x01001290, 0x01001298 ] }; // n
+ key <AB07> { [ 0x01001218, VoidSymbol ] }; // m
+
+ key <AB08> { [ 0x01001363, VoidSymbol ] }; // <
+ key <AB09> { [ 0x01001364, VoidSymbol ] }; // >
+ key <AB10> { [ 0x01001367, question ] }; // ?
+
+ key <BKSL> { [ VoidSymbol, 0x01002010 ] }; // bksl
+
+ include "group(olpc)"
+};
diff --git a/xorg-server/xkeyboard-config/symbols/fujitsu_vndr/makefile b/xorg-server/xkeyboard-config/symbols/fujitsu_vndr/makefile new file mode 100644 index 000000000..841c123d8 --- /dev/null +++ b/xorg-server/xkeyboard-config/symbols/fujitsu_vndr/makefile @@ -0,0 +1,12 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\symbols\fujitsu_vndr + +dist_symbols_DATA = \ +jp us + +DATA_FILES=$(dist_symbols_DATA:%=$(DESTDIR)\%) + +include ..\..\xkbrules.mak diff --git a/xorg-server/xkeyboard-config/symbols/hp_vndr/makefile b/xorg-server/xkeyboard-config/symbols/hp_vndr/makefile new file mode 100644 index 000000000..3e6a64f47 --- /dev/null +++ b/xorg-server/xkeyboard-config/symbols/hp_vndr/makefile @@ -0,0 +1,12 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\symbols\hp_vndr + +dist_symbols_DATA = \ +us + +DATA_FILES=$(dist_symbols_DATA:%=$(DESTDIR)\%) + +include ..\..\xkbrules.mak diff --git a/xorg-server/xkeyboard-config/symbols/ir b/xorg-server/xkeyboard-config/symbols/ir index 1832e819b..28b8dc17d 100644 --- a/xorg-server/xkeyboard-config/symbols/ir +++ b/xorg-server/xkeyboard-config/symbols/ir @@ -1,306 +1,306 @@ -// Iranian keyboard layout - -//////////////////////////////////////// -// Persian layout, -// based on -// Information Technology – Layout of Persian Letters and Symbols on Computer Keyboards -// ISIRI 9147 – 1st Edition -// Institute of Standards and Industrial Research of Iran -// http://www.isiri.org/UserStd/DownloadStd.aspx?id=9147 -// http://behnam.esfahbod.info/standards/isiri-keyboard-9147.pdf -// -// Author: Behnam Esfahbod <behnam@esfahbod.info> -// - -partial default alphanumeric_keys -xkb_symbols "pes" { - name[Group1]= "Iran"; - - include "ir(pes_part_basic)" - include "ir(pes_part_ext)" - - include "nbsp(zwnj2nb3nnb4)" - include "level3(ralt_switch)" -}; - - -partial alphanumeric_keys -xkb_symbols "pes_keypad" { - name[Group1]= "Iran - Persian, with Persian Keypad"; - - include "ir(pes_part_basic)" - include "ir(pes_part_keypad)" - - include "nbsp(zwnj2nb3nnb4)" - include "level3(ralt_switch)" -}; - -partial hidden alphanumeric_keys -xkb_symbols "pes_part_basic" { - - // Persian digits - key <AE01> { [ Farsi_1, exclam, quoteleft ] }; - key <AE02> { [ Farsi_2, 0x100066c, at ] }; - key <AE03> { [ Farsi_3, 0x100066b, numbersign ] }; - key <AE04> { [ Farsi_4, 0x100fdfc, dollar ] }; - key <AE05> { [ Farsi_5, 0x100066a, percent ] }; - key <AE06> { [ Farsi_6, multiply, asciicircum ] }; - key <AE07> { [ Farsi_7, Arabic_comma, ampersand ] }; - key <AE08> { [ Farsi_8, asterisk, enfilledcircbullet ] }; - key <AE09> { [ Farsi_9, parenright, 0x100200e ] }; - key <AE10> { [ Farsi_0, parenleft, 0x100200f ] }; - - // Persian letters and symbols - key <AD01> { [ Arabic_dad, Arabic_sukun, degree ] }; - key <AD02> { [ Arabic_sad, Arabic_dammatan, VoidSymbol ] }; - key <AD03> { [ Arabic_theh, Arabic_kasratan, 0x13a4 ] }; - key <AD04> { [ Arabic_qaf, Arabic_fathatan, VoidSymbol ] }; - key <AD05> { [ Arabic_feh, Arabic_damma, VoidSymbol ] }; - key <AD06> { [ Arabic_ghain, Arabic_kasra, VoidSymbol ] }; - key <AD07> { [ Arabic_ain, Arabic_fatha, VoidSymbol ] }; - key <AD08> { [ Arabic_heh, Arabic_shadda, 0x100202d ] }; - key <AD09> { [ Arabic_khah, bracketright, 0x100202e ] }; - key <AD10> { [ Arabic_hah, bracketleft, 0x100202c ] }; - key <AD11> { [ Arabic_jeem, braceright, 0x100202a ] }; - key <AD12> { [ Arabic_tcheh, braceleft, 0x100202b ] }; - - key <AC01> { [ Arabic_sheen, Arabic_hamzaonwaw, VoidSymbol ] }; - key <AC02> { [ Arabic_seen, Arabic_hamzaonyeh, VoidSymbol ] }; - key <AC03> { [ Farsi_yeh, Arabic_yeh, Arabic_alefmaksura ] }; - key <AC04> { [ Arabic_beh, Arabic_hamzaunderalef, VoidSymbol ] }; - key <AC05> { [ Arabic_lam, Arabic_hamzaonalef, VoidSymbol ] }; - key <AC06> { [ Arabic_alef, Arabic_maddaonalef, 0x1000671 ] }; - key <AC07> { [ Arabic_teh, Arabic_tehmarbuta, VoidSymbol ] }; - key <AC08> { [ Arabic_noon, guillemotright, 0x100fd3e ] }; - key <AC09> { [ Arabic_meem, guillemotleft, 0x100fd3f ] }; - key <AC10> { [ Arabic_keheh, colon, semicolon ] }; - key <AC11> { [ Arabic_gaf, Arabic_semicolon, quotedbl ] }; - - key <AB01> { [ Arabic_zah, Arabic_kaf, VoidSymbol ] }; - key <AB02> { [ Arabic_tah, 0x1000653, VoidSymbol ] }; - key <AB03> { [ Arabic_zain, Arabic_jeh, VoidSymbol ] }; - key <AB04> { [ Arabic_ra, Arabic_superscript_alef -, 0x1000656 ] }; - key <AB05> { [ Arabic_thal, 0x100200c, 0x100200d ] }; - key <AB06> { [ Arabic_dal, Arabic_hamza_above -, Arabic_hamza_below ] }; - key <AB07> { [ Arabic_peh, Arabic_hamza, ellipsis ] }; - key <AB08> { [ Arabic_waw, greater, comma ] }; - key <AB09> { [ period, less, apostrophe ] }; - key <AB10> { [ slash, Arabic_question_mark, question ] }; - - key <TLDE> { [ 0x100200d, division, asciitilde ] }; - key <AE11> { [ minus, Arabic_tatweel, underscore ] }; - key <AE12> { [ equal, plus, 0x1002212 ] }; - key <BKSL> { [ backslash, bar, 0x1002010 ] }; -}; - -partial hidden alphanumeric_keys -xkb_symbols "pes_part_ext" { - - // Persian and ASCII digits - key <AE01> { [ 0x10006f1, exclam, quoteleft, 1 ] }; - key <AE02> { [ 0x10006f2, 0x100066c, at, 2 ] }; - key <AE03> { [ 0x10006f3, 0x100066b, numbersign, 3 ] }; - key <AE04> { [ 0x10006f4, 0x100fdfc, dollar, 4 ] }; - key <AE05> { [ 0x10006f5, 0x100066a, percent, 5 ] }; - key <AE06> { [ 0x10006f6, multiply, asciicircum, 6 ] }; - key <AE07> { [ 0x10006f7, Arabic_comma, ampersand, 7 ] }; - key <AE08> { [ 0x10006f8, asterisk, enfilledcircbullet, 8 ] }; - key <AE09> { [ 0x10006f9, parenright, 0x100200e, 9 ] }; - key <AE10> { [ 0x10006f0, parenleft, 0x100200f, 0 ] }; -}; - -partial hidden alphanumeric_keys -xkb_symbols "pes_part_keypad" { - - // Persian digits and Mathematical operators - key <KPDV> { [ division, XF86_Ungrab ] }; - key <KPMU> { [ multiply, XF86_ClearGrab ] }; - key <KPSU> { [ 0x1002212, XF86_Prev_VMode ] }; - key <KPAD> { [ plus, XF86_Next_VMode ] }; - - key <KPEN> { [ KP_Enter ] }; - key <KPEQ> { [ equal ] }; - - key <KP7> { [ KP_Home, 0x10006f7 ] }; - key <KP8> { [ KP_Up, 0x10006f8 ] }; - key <KP9> { [ KP_Prior, 0x10006f9 ] }; - - key <KP4> { [ KP_Left, 0x10006f4 ] }; - key <KP5> { [ KP_Begin, 0x10006f5 ] }; - key <KP6> { [ KP_Right, 0x10006f6 ] }; - - key <KP1> { [ KP_End, 0x10006f1 ] }; - key <KP2> { [ KP_Down, 0x10006f2 ] }; - key <KP3> { [ KP_Next, 0x10006f3 ] }; - - key <KP0> { [ KP_Insert, 0x10006f0 ] }; - key <KPDL> { [ KP_Delete, 0x100066b ] }; -}; - - -//////////////////////////////////////// -// Kurdish Layout - -partial alphanumeric_keys -xkb_symbols "ku" { - include "tr(ku)" - name[Group1]= "Iran - Kurdish, Latin Q"; -}; - -partial alphanumeric_keys -xkb_symbols "ku_f" { - include "tr(ku_f)" - name[Group1]= "Iran - Kurdish, (F)"; -}; - -partial alphanumeric_keys -xkb_symbols "ku_alt" { - include "tr(ku_alt)" - name[Group1]= "Iran - Kurdish, Latin Alt-Q"; -}; - -//////////////////////////////////////// -// Kurdish Soranî Bahdînî (Arabic) keyboard layout, -// based on the Kurdî Soranî Bahdînî keyboard from KurdITGroup -// which is based on National Iranian Keyboard Standard (ISIRI 2901:1994), -// with additions. -// -// Copyright (C) 2006 Erdal Ronahî, published under the GPL v2 -// -// Special copyright note: author explicitly permitted to license this -// layout under MIT/X11 license, for details see -// https://bugs.freedesktop.org/show_bug.cgi?id=9541 -// -// Author: Erdal Ronahî <erdal.ronahi@gmail.com> -// -// Kurdish Arabic-Latin Layout for Soranî - -partial alphanumeric_keys -xkb_symbols "ku_ara" { - name[Group1]= "Iran - Kurdish, Arabic-Latin"; - - // Other 3-Level symbols - key <TLDE> { [ 0x100200d, division, asciitilde ] }; - key <BKSL> { [ backslash, bar, ccedilla, Ccedilla ] }; - - // Digits - key <AE01> { [ 1, exclam, 0x10006f1, quoteleft ] }; - key <AE02> { [ 2, at, 0x10006f2, at ] }; - key <AE03> { [ 3, numbersign, 0x10006f3, 0x100066b ] }; - key <AE04> { [ 4, dollar, 0x10006f4, 0x100fdfc ] }; - key <AE05> { [ 5, percent, 0x10006f5, 0x100066a ] }; - key <AE06> { [ 6, asciicircum, 0x10006f6, multiply ] }; - key <AE07> { [ 7, ampersand, 0x10006f7, Arabic_comma ] }; - key <AE08> { [ 8, asterisk, 0x10006f8, enfilledcircbullet ] }; - key <AE09> { [ 9, parenright, 0x10006f9, 0x100200e ] }; - key <AE10> { [ 0, parenleft, 0x10006f0, 0x100200f ] }; - key <AE11> { [ minus, Arabic_tatweel, underscore ] }; - key <AE12> { [ equal, plus, 0x1002212 ] }; - - key <AD01> { [ Arabic_qaf, X, q, Q ] }; - key <AD02> { [ Arabic_waw, X, w, W ] }; - key <AD03> { [ 0x10006d5, Arabic_heh, e, E ] }; - key <AD04> { [ Arabic_ra , 0x1000695, r, R ] }; - key <AD05> { [ Arabic_teh, Arabic_tah, t, T ] }; - key <AD06> { [ 0x10006cc, 0x10006ce, y, Y ] }; - key <AD07> { [ Arabic_hamzaonyeh, Arabic_hamza, u, U ] }; - key <AD08> { [ Arabic_hah, Arabic_ain, i, I ] }; - key <AD09> { [ 0x10006c6, Arabic_hamzaonwaw, o, O ] }; - key <AD10> { [ 0x100067e, Arabic_theh, p, P ] }; - key <AD11> { [ bracketright, braceright, ucircumflex, Ucircumflex ] }; - key <AD12> { [ bracketleft, braceleft, scedilla, Scedilla ] }; - - key <AC01> { [ Arabic_alef, Arabic_maddaonalef, a, A ] }; - key <AC02> { [ Arabic_seen, Arabic_sheen, s, S ] }; - key <AC03> { [ Arabic_dal, Arabic_thal, d, D ] }; - key <AC04> { [ Arabic_feh, Arabic_hamzaunderalef, f, F ] }; - key <AC05> { [ 0x10006af, Arabic_ghain, g, G ] }; - key <AC06> { [ Arabic_heh, 0x100200c, h, H ] }; - key <AC07> { [ 0x1000698, Arabic_hamzaonalef, j, J ] }; - key <AC08> { [ 0x10006a9, Arabic_kaf, k, K ] }; - key <AC09> { [ Arabic_lam, 0x10006b5, l, L ] }; - key <AC10> { [ Arabic_semicolon, colon, ecircumflex, Ecircumflex ] }; - key <AC11> { [ apostrophe, quotedbl, icircumflex, Icircumflex ] }; - - key <AB01> { [ Arabic_zain, Arabic_dad, z, Z ] }; - key <AB02> { [ Arabic_khah, Arabic_sad, x, X ] }; - key <AB03> { [ Arabic_jeem, 0x1000686, c, C ] }; - key <AB04> { [ 0x10006a4, Arabic_zah, v, V ] }; - key <AB05> { [ Arabic_beh, 0x1000649, b, B ] }; - key <AB06> { [ Arabic_noon, Arabic_tehmarbuta, n, N ] }; - key <AB07> { [ Arabic_meem, Arabic_tatweel, m, M ] }; - key <AB08> { [ Arabic_comma, greater, comma ] }; - key <AB09> { [ period, less, apostrophe ] }; - key <AB10> { [ slash, Arabic_question_mark, question ] }; - - include "nbsp(zwnj2nb3)" - include "level3(ralt_switch)" -}; - -// EXTRAS: - -///////////////////////////////////////////////////////////////////////////////// -// -// Generated keyboard layout file with the Keyboard Layout Editor. -// For more about the software, see http://code.google.com/p/keyboardlayouteditor -// -// Version 0.2, fixed AD09. -// -// Layout by Ernst Tremel, http://ubuntuforums.org/showpost.php?p=9365469&postcount=32 -// Creation of this file by Simos Xenitellis. - -partial default alphanumeric_keys -xkb_symbols "ave" -{ - name[Group1] = "Iran - Avestan"; - - key <AB01> { [ U10B30, U10B32 ] }; // 𐬰 𐬲 - key <AB02> { [ U10B11, U10B12 ] }; // 𐬑 𐬒 - key <AB03> { [ U10B17, UE102 ] }; // 𐬗 - key <AB04> { [ U10B2C, U10B13 ] }; // 𐬬 𐬓 - key <AB05> { [ U10B20, U10B21 ] }; // 𐬠 𐬡 - key <AB06> { [ U10B25, U10B27 ] }; // 𐬥 𐬧 - key <AB07> { [ U10B28, U10B29 ] }; // 𐬨 𐬩 - key <AB08> { [ U10B3C, U10B39 ] }; // 𐬼 𐬹 - key <AB09> { [ U10B3E, U10B3D ] }; // 𐬾 𐬽 - key <AB10> { [ U10B3F, periodcentered ] }; // 𐬿 · - - key <AC01> { [ U10B00, U10B01 ] }; // 𐬀 𐬁 - key <AC02> { [ U10B2F, U10B31 ] }; // 𐬯 𐬱 - key <AC03> { [ U10B1B, U10B1C ] }; // 𐬛 𐬜 - key <AC04> { [ U10B1F, U10B16 ] }; // 𐬟 𐬖 - key <AC05> { [ U10B14, U10B15 ] }; // 𐬔 𐬕 - key <AC06> { [ U10B35, UE100 ] }; // 𐬵 - key <AC07> { [ U10B18, U10B24 ] }; // 𐬘 𐬤 - key <AC08> { [ U10B10, UE101 ] }; // 𐬐 - key <AC09> { [ U10B2E, UE103 ] }; // 𐬮 - key <AC10> { [ U10B3B, U10B3A ] }; // 𐬻 𐬺 - key <AC11> { [ U10B1D ] }; // 𐬝 - - key <AD01> { [ U10B22, U10B23 ] }; // 𐬢 𐬣 - key <AD02> { [ U10B33, U10B34 ] }; // 𐬳 𐬴 - key <AD03> { [ U10B08, U10B09 ] }; // 𐬈 𐬉 - key <AD04> { [ U10B2D, U10B26 ] }; // 𐬭 𐬦 - key <AD05> { [ U10B19, U10B1A ] }; // 𐬙 𐬚 - key <AD06> { [ U10B2B, U10B2A ] }; // 𐬫 𐬪 - key <AD07> { [ U10B0E, U10B0F ] }; // 𐬎 𐬏 - key <AD08> { [ U10B0C, U10B0D ] }; // 𐬌 𐬍 - key <AD09> { [ U10B0A, U10B0B ] }; // 𐬊 𐬋 - key <AD10> { [ U10B1E ] }; // 𐬞 - key <AD11> { [ U10B06, U10B07 ] }; // 𐬆 𐬇 - key <AD12> { [ U10B02, U10B03 ] }; // 𐬂 𐬃 - - key <AE01> { [ U10B78 ] }; // 𐭸 - key <AE02> { [ U10B79 ] }; // 𐭹 - key <AE03> { [ U10B7A ] }; // 𐭺 - key <AE04> { [ U10B7B ] }; // 𐭻 - key <AE05> { [ U10B7C ] }; // 𐭼 - key <AE06> { [ U10B7D ] }; // 𐭽 - key <AE07> { [ U10B7E ] }; // 𐭾 - key <AE08> { [ U10B7F ] }; // 𐭿 - - key <BKSL> { [ U10B04, U10B05 ] }; // 𐬄 𐬅 - key <LSGT> { [ U10B04, U10B05 ] }; // 𐬄 𐬅 -}; +// Iranian keyboard layout
+
+////////////////////////////////////////
+// Persian layout,
+// based on
+// Information Technology – Layout of Persian Letters and Symbols on Computer Keyboards
+// ISIRI 9147 – 1st Edition
+// Institute of Standards and Industrial Research of Iran
+// http://www.isiri.org/UserStd/DownloadStd.aspx?id=9147
+// http://behnam.esfahbod.info/standards/isiri-keyboard-9147.pdf
+//
+// Author: Behnam Esfahbod <behnam@esfahbod.info>
+//
+
+partial default alphanumeric_keys
+xkb_symbols "pes" {
+ name[Group1]= "Iran";
+
+ include "ir(pes_part_basic)"
+ include "ir(pes_part_ext)"
+
+ include "nbsp(zwnj2nb3nnb4)"
+ include "level3(ralt_switch)"
+};
+
+
+partial alphanumeric_keys
+xkb_symbols "pes_keypad" {
+ name[Group1]= "Iran - Persian, with Persian Keypad";
+
+ include "ir(pes_part_basic)"
+ include "ir(pes_part_keypad)"
+
+ include "nbsp(zwnj2nb3nnb4)"
+ include "level3(ralt_switch)"
+};
+
+partial hidden alphanumeric_keys
+xkb_symbols "pes_part_basic" {
+
+ // Persian digits
+ key <AE01> { [ Farsi_1, exclam, quoteleft ] };
+ key <AE02> { [ Farsi_2, 0x100066c, at ] };
+ key <AE03> { [ Farsi_3, 0x100066b, numbersign ] };
+ key <AE04> { [ Farsi_4, 0x100fdfc, dollar ] };
+ key <AE05> { [ Farsi_5, 0x100066a, percent ] };
+ key <AE06> { [ Farsi_6, multiply, asciicircum ] };
+ key <AE07> { [ Farsi_7, Arabic_comma, ampersand ] };
+ key <AE08> { [ Farsi_8, asterisk, enfilledcircbullet ] };
+ key <AE09> { [ Farsi_9, parenright, 0x100200e ] };
+ key <AE10> { [ Farsi_0, parenleft, 0x100200f ] };
+
+ // Persian letters and symbols
+ key <AD01> { [ Arabic_dad, Arabic_sukun, degree ] };
+ key <AD02> { [ Arabic_sad, Arabic_dammatan, VoidSymbol ] };
+ key <AD03> { [ Arabic_theh, Arabic_kasratan, 0x13a4 ] };
+ key <AD04> { [ Arabic_qaf, Arabic_fathatan, VoidSymbol ] };
+ key <AD05> { [ Arabic_feh, Arabic_damma, VoidSymbol ] };
+ key <AD06> { [ Arabic_ghain, Arabic_kasra, VoidSymbol ] };
+ key <AD07> { [ Arabic_ain, Arabic_fatha, VoidSymbol ] };
+ key <AD08> { [ Arabic_heh, Arabic_shadda, 0x100202d ] };
+ key <AD09> { [ Arabic_khah, bracketright, 0x100202e ] };
+ key <AD10> { [ Arabic_hah, bracketleft, 0x100202c ] };
+ key <AD11> { [ Arabic_jeem, braceright, 0x100202a ] };
+ key <AD12> { [ Arabic_tcheh, braceleft, 0x100202b ] };
+
+ key <AC01> { [ Arabic_sheen, Arabic_hamzaonwaw, VoidSymbol ] };
+ key <AC02> { [ Arabic_seen, Arabic_hamzaonyeh, VoidSymbol ] };
+ key <AC03> { [ Farsi_yeh, Arabic_yeh, Arabic_alefmaksura ] };
+ key <AC04> { [ Arabic_beh, Arabic_hamzaunderalef, VoidSymbol ] };
+ key <AC05> { [ Arabic_lam, Arabic_hamzaonalef, VoidSymbol ] };
+ key <AC06> { [ Arabic_alef, Arabic_maddaonalef, 0x1000671 ] };
+ key <AC07> { [ Arabic_teh, Arabic_tehmarbuta, VoidSymbol ] };
+ key <AC08> { [ Arabic_noon, guillemotright, 0x100fd3e ] };
+ key <AC09> { [ Arabic_meem, guillemotleft, 0x100fd3f ] };
+ key <AC10> { [ Arabic_keheh, colon, semicolon ] };
+ key <AC11> { [ Arabic_gaf, Arabic_semicolon, quotedbl ] };
+
+ key <AB01> { [ Arabic_zah, Arabic_kaf, VoidSymbol ] };
+ key <AB02> { [ Arabic_tah, 0x1000653, VoidSymbol ] };
+ key <AB03> { [ Arabic_zain, Arabic_jeh, VoidSymbol ] };
+ key <AB04> { [ Arabic_ra, Arabic_superscript_alef
+, 0x1000656 ] };
+ key <AB05> { [ Arabic_thal, 0x100200c, 0x100200d ] };
+ key <AB06> { [ Arabic_dal, Arabic_hamza_above
+, Arabic_hamza_below ] };
+ key <AB07> { [ Arabic_peh, Arabic_hamza, ellipsis ] };
+ key <AB08> { [ Arabic_waw, greater, comma ] };
+ key <AB09> { [ period, less, apostrophe ] };
+ key <AB10> { [ slash, Arabic_question_mark, question ] };
+
+ key <TLDE> { [ 0x100200d, division, asciitilde ] };
+ key <AE11> { [ minus, Arabic_tatweel, underscore ] };
+ key <AE12> { [ equal, plus, 0x1002212 ] };
+ key <BKSL> { [ backslash, bar, 0x1002010 ] };
+};
+
+partial hidden alphanumeric_keys
+xkb_symbols "pes_part_ext" {
+
+ // Persian and ASCII digits
+ key <AE01> { [ 0x10006f1, exclam, quoteleft, 1 ] };
+ key <AE02> { [ 0x10006f2, 0x100066c, at, 2 ] };
+ key <AE03> { [ 0x10006f3, 0x100066b, numbersign, 3 ] };
+ key <AE04> { [ 0x10006f4, 0x100fdfc, dollar, 4 ] };
+ key <AE05> { [ 0x10006f5, 0x100066a, percent, 5 ] };
+ key <AE06> { [ 0x10006f6, multiply, asciicircum, 6 ] };
+ key <AE07> { [ 0x10006f7, Arabic_comma, ampersand, 7 ] };
+ key <AE08> { [ 0x10006f8, asterisk, enfilledcircbullet, 8 ] };
+ key <AE09> { [ 0x10006f9, parenright, 0x100200e, 9 ] };
+ key <AE10> { [ 0x10006f0, parenleft, 0x100200f, 0 ] };
+};
+
+partial hidden alphanumeric_keys
+xkb_symbols "pes_part_keypad" {
+
+ // Persian digits and Mathematical operators
+ key <KPDV> { [ division, XF86_Ungrab ] };
+ key <KPMU> { [ multiply, XF86_ClearGrab ] };
+ key <KPSU> { [ 0x1002212, XF86_Prev_VMode ] };
+ key <KPAD> { [ plus, XF86_Next_VMode ] };
+
+ key <KPEN> { [ KP_Enter ] };
+ key <KPEQ> { [ equal ] };
+
+ key <KP7> { [ KP_Home, 0x10006f7 ] };
+ key <KP8> { [ KP_Up, 0x10006f8 ] };
+ key <KP9> { [ KP_Prior, 0x10006f9 ] };
+
+ key <KP4> { [ KP_Left, 0x10006f4 ] };
+ key <KP5> { [ KP_Begin, 0x10006f5 ] };
+ key <KP6> { [ KP_Right, 0x10006f6 ] };
+
+ key <KP1> { [ KP_End, 0x10006f1 ] };
+ key <KP2> { [ KP_Down, 0x10006f2 ] };
+ key <KP3> { [ KP_Next, 0x10006f3 ] };
+
+ key <KP0> { [ KP_Insert, 0x10006f0 ] };
+ key <KPDL> { [ KP_Delete, 0x100066b ] };
+};
+
+
+////////////////////////////////////////
+// Kurdish Layout
+
+partial alphanumeric_keys
+xkb_symbols "ku" {
+ include "tr(ku)"
+ name[Group1]= "Iran - Kurdish, Latin Q";
+};
+
+partial alphanumeric_keys
+xkb_symbols "ku_f" {
+ include "tr(ku_f)"
+ name[Group1]= "Iran - Kurdish, (F)";
+};
+
+partial alphanumeric_keys
+xkb_symbols "ku_alt" {
+ include "tr(ku_alt)"
+ name[Group1]= "Iran - Kurdish, Latin Alt-Q";
+};
+
+////////////////////////////////////////
+// Kurdish Soranî Bahdînî (Arabic) keyboard layout,
+// based on the Kurdî Soranî Bahdînî keyboard from KurdITGroup
+// which is based on National Iranian Keyboard Standard (ISIRI 2901:1994),
+// with additions.
+//
+// Copyright (C) 2006 Erdal Ronahî, published under the GPL v2
+//
+// Special copyright note: author explicitly permitted to license this
+// layout under MIT/X11 license, for details see
+// https://bugs.freedesktop.org/show_bug.cgi?id=9541
+//
+// Author: Erdal Ronahî <erdal.ronahi@gmail.com>
+//
+// Kurdish Arabic-Latin Layout for Soranî
+
+partial alphanumeric_keys
+xkb_symbols "ku_ara" {
+ name[Group1]= "Iran - Kurdish, Arabic-Latin";
+
+ // Other 3-Level symbols
+ key <TLDE> { [ 0x100200d, division, asciitilde ] };
+ key <BKSL> { [ backslash, bar, ccedilla, Ccedilla ] };
+
+ // Digits
+ key <AE01> { [ 1, exclam, 0x10006f1, quoteleft ] };
+ key <AE02> { [ 2, at, 0x10006f2, at ] };
+ key <AE03> { [ 3, numbersign, 0x10006f3, 0x100066b ] };
+ key <AE04> { [ 4, dollar, 0x10006f4, 0x100fdfc ] };
+ key <AE05> { [ 5, percent, 0x10006f5, 0x100066a ] };
+ key <AE06> { [ 6, asciicircum, 0x10006f6, multiply ] };
+ key <AE07> { [ 7, ampersand, 0x10006f7, Arabic_comma ] };
+ key <AE08> { [ 8, asterisk, 0x10006f8, enfilledcircbullet ] };
+ key <AE09> { [ 9, parenright, 0x10006f9, 0x100200e ] };
+ key <AE10> { [ 0, parenleft, 0x10006f0, 0x100200f ] };
+ key <AE11> { [ minus, Arabic_tatweel, underscore ] };
+ key <AE12> { [ equal, plus, 0x1002212 ] };
+
+ key <AD01> { [ Arabic_qaf, X, q, Q ] };
+ key <AD02> { [ Arabic_waw, X, w, W ] };
+ key <AD03> { [ 0x10006d5, Arabic_heh, e, E ] };
+ key <AD04> { [ Arabic_ra , 0x1000695, r, R ] };
+ key <AD05> { [ Arabic_teh, Arabic_tah, t, T ] };
+ key <AD06> { [ 0x10006cc, 0x10006ce, y, Y ] };
+ key <AD07> { [ Arabic_hamzaonyeh, Arabic_hamza, u, U ] };
+ key <AD08> { [ Arabic_hah, Arabic_ain, i, I ] };
+ key <AD09> { [ 0x10006c6, Arabic_hamzaonwaw, o, O ] };
+ key <AD10> { [ 0x100067e, Arabic_theh, p, P ] };
+ key <AD11> { [ bracketright, braceright, ucircumflex, Ucircumflex ] };
+ key <AD12> { [ bracketleft, braceleft, scedilla, Scedilla ] };
+
+ key <AC01> { [ Arabic_alef, Arabic_maddaonalef, a, A ] };
+ key <AC02> { [ Arabic_seen, Arabic_sheen, s, S ] };
+ key <AC03> { [ Arabic_dal, Arabic_thal, d, D ] };
+ key <AC04> { [ Arabic_feh, Arabic_hamzaunderalef, f, F ] };
+ key <AC05> { [ 0x10006af, Arabic_ghain, g, G ] };
+ key <AC06> { [ Arabic_heh, 0x100200c, h, H ] };
+ key <AC07> { [ 0x1000698, Arabic_hamzaonalef, j, J ] };
+ key <AC08> { [ 0x10006a9, Arabic_kaf, k, K ] };
+ key <AC09> { [ Arabic_lam, 0x10006b5, l, L ] };
+ key <AC10> { [ Arabic_semicolon, colon, ecircumflex, Ecircumflex ] };
+ key <AC11> { [ apostrophe, quotedbl, icircumflex, Icircumflex ] };
+
+ key <AB01> { [ Arabic_zain, Arabic_dad, z, Z ] };
+ key <AB02> { [ Arabic_khah, Arabic_sad, x, X ] };
+ key <AB03> { [ Arabic_jeem, 0x1000686, c, C ] };
+ key <AB04> { [ 0x10006a4, Arabic_zah, v, V ] };
+ key <AB05> { [ Arabic_beh, 0x1000649, b, B ] };
+ key <AB06> { [ Arabic_noon, Arabic_tehmarbuta, n, N ] };
+ key <AB07> { [ Arabic_meem, Arabic_tatweel, m, M ] };
+ key <AB08> { [ Arabic_comma, greater, comma ] };
+ key <AB09> { [ period, less, apostrophe ] };
+ key <AB10> { [ slash, Arabic_question_mark, question ] };
+
+ include "nbsp(zwnj2nb3)"
+ include "level3(ralt_switch)"
+};
+
+// EXTRAS:
+
+/////////////////////////////////////////////////////////////////////////////////
+//
+// Generated keyboard layout file with the Keyboard Layout Editor.
+// For more about the software, see http://code.google.com/p/keyboardlayouteditor
+//
+// Version 0.2, fixed AD09.
+//
+// Layout by Ernst Tremel, http://ubuntuforums.org/showpost.php?p=9365469&postcount=32
+// Creation of this file by Simos Xenitellis.
+
+partial default alphanumeric_keys
+xkb_symbols "ave"
+{
+ name[Group1] = "Iran - Avestan";
+
+ key <AB01> { [ U10B30, U10B32 ] }; // 𐬰 𐬲
+ key <AB02> { [ U10B11, U10B12 ] }; // 𐬑 𐬒
+ key <AB03> { [ U10B17, UE102 ] }; // 𐬗
+ key <AB04> { [ U10B2C, U10B13 ] }; // 𐬬 𐬓
+ key <AB05> { [ U10B20, U10B21 ] }; // 𐬠 𐬡
+ key <AB06> { [ U10B25, U10B27 ] }; // 𐬥 𐬧
+ key <AB07> { [ U10B28, U10B29 ] }; // 𐬨 𐬩
+ key <AB08> { [ U10B3C, U10B39 ] }; // 𐬼 𐬹
+ key <AB09> { [ U10B3E, U10B3D ] }; // 𐬾 𐬽
+ key <AB10> { [ U10B3F, periodcentered ] }; // 𐬿 ·
+
+ key <AC01> { [ U10B00, U10B01 ] }; // 𐬀 𐬁
+ key <AC02> { [ U10B2F, U10B31 ] }; // 𐬯 𐬱
+ key <AC03> { [ U10B1B, U10B1C ] }; // 𐬛 𐬜
+ key <AC04> { [ U10B1F, U10B16 ] }; // 𐬟 𐬖
+ key <AC05> { [ U10B14, U10B15 ] }; // 𐬔 𐬕
+ key <AC06> { [ U10B35, UE100 ] }; // 𐬵
+ key <AC07> { [ U10B18, U10B24 ] }; // 𐬘 𐬤
+ key <AC08> { [ U10B10, UE101 ] }; // 𐬐
+ key <AC09> { [ U10B2E, UE103 ] }; // 𐬮
+ key <AC10> { [ U10B3B, U10B3A ] }; // 𐬻 𐬺
+ key <AC11> { [ U10B1D ] }; // 𐬝
+
+ key <AD01> { [ U10B22, U10B23 ] }; // 𐬢 𐬣
+ key <AD02> { [ U10B33, U10B34 ] }; // 𐬳 𐬴
+ key <AD03> { [ U10B08, U10B09 ] }; // 𐬈 𐬉
+ key <AD04> { [ U10B2D, U10B26 ] }; // 𐬭 𐬦
+ key <AD05> { [ U10B19, U10B1A ] }; // 𐬙 𐬚
+ key <AD06> { [ U10B2B, U10B2A ] }; // 𐬫 𐬪
+ key <AD07> { [ U10B0E, U10B0F ] }; // 𐬎 𐬏
+ key <AD08> { [ U10B0C, U10B0D ] }; // 𐬌 𐬍
+ key <AD09> { [ U10B0A, U10B0B ] }; // 𐬊 𐬋
+ key <AD10> { [ U10B1E ] }; // 𐬞
+ key <AD11> { [ U10B06, U10B07 ] }; // 𐬆 𐬇
+ key <AD12> { [ U10B02, U10B03 ] }; // 𐬂 𐬃
+
+ key <AE01> { [ U10B78 ] }; // 𐭸
+ key <AE02> { [ U10B79 ] }; // 𐭹
+ key <AE03> { [ U10B7A ] }; // 𐭺
+ key <AE04> { [ U10B7B ] }; // 𐭻
+ key <AE05> { [ U10B7C ] }; // 𐭼
+ key <AE06> { [ U10B7D ] }; // 𐭽
+ key <AE07> { [ U10B7E ] }; // 𐭾
+ key <AE08> { [ U10B7F ] }; // 𐭿
+
+ key <BKSL> { [ U10B04, U10B05 ] }; // 𐬄 𐬅
+ key <LSGT> { [ U10B04, U10B05 ] }; // 𐬄 𐬅
+};
diff --git a/xorg-server/xkeyboard-config/symbols/level3 b/xorg-server/xkeyboard-config/symbols/level3 index 599443002..20a19a72e 100644 --- a/xorg-server/xkeyboard-config/symbols/level3 +++ b/xorg-server/xkeyboard-config/symbols/level3 @@ -7,7 +7,7 @@ default partial modifier_keys
xkb_symbols "ralt_switch" {
key <RALT> {
- type[Group1]="ONE_LEVEL",
+ type[Group1]="TWO_LEVEL",
symbols[Group1] = [ ISO_Level3_Shift ]
};
modifier_map Mod5 { ISO_Level3_Shift };
diff --git a/xorg-server/xkeyboard-config/symbols/macintosh_vndr/makefile b/xorg-server/xkeyboard-config/symbols/macintosh_vndr/makefile new file mode 100644 index 000000000..0c54d7bdd --- /dev/null +++ b/xorg-server/xkeyboard-config/symbols/macintosh_vndr/makefile @@ -0,0 +1,16 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\symbols\macintosh_vndr + +dist_symbols_DATA = \ +apple ch de dk \ +fi fr \ +gb is it jp \ +latam nl no pt \ +se us + +DATA_FILES=$(dist_symbols_DATA:%=$(DESTDIR)\%) + +include ..\..\xkbrules.mak diff --git a/xorg-server/xkeyboard-config/symbols/makefile b/xorg-server/xkeyboard-config/symbols/makefile new file mode 100644 index 000000000..6fdc02f24 --- /dev/null +++ b/xorg-server/xkeyboard-config/symbols/makefile @@ -0,0 +1,56 @@ +SUBDIRS = digital_vndr fujitsu_vndr hp_vndr macintosh_vndr nec_vndr nokia_vndr sgi_vndr sony_vndr sun_vndr xfree68_vndr + +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +THISDIR=symbols + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\$(THISDIR) + +dist_symbols_DATA = \ +ad af al \ +am apl ara \ +at az \ +ba bd be \ +bg br brai \ +bt bw by \ +ca cd \ +ch cn cz \ +de dk \ +ee es et epo \ +fi fo fr \ +gb ge gh gn \ +gr hr hu \ +ie il in iq \ +ir is it jp \ +ke kg kh \ +kr kz \ +la latam latin \ +lk lt lv \ +ma mao me \ +mk ml mm \ +mn mt mv \ +ng nl no np \ +pc ph pk pl pt \ +ro rs ru \ +se si sk sn \ +sy th \ +terminate \ +tj tm tr tw tz \ +ua us uz vn \ +za \ +altwin capslock compose ctrl empty eurosign rupeesign group inet \ +keypad kpdl level3 level5 nbsp olpc shift srvr_ctrl typo + +DATA_FILES=$(dist_symbols_DATA:%=$(DESTDIR)\%) + +load_makefile $(SUBDIRS:%=%\makefile MAKESERVER=0 DEBUG=$(DEBUG);) + +extrastuff: $(SUBDIRS:%=%\all) + +include ..\xkbrules.mak + +$(DESTDIR)\cd: cd.in + copy $< $@ + diff --git a/xorg-server/xkeyboard-config/symbols/mn b/xorg-server/xkeyboard-config/symbols/mn index a838bd5e0..462a953e8 100644 --- a/xorg-server/xkeyboard-config/symbols/mn +++ b/xorg-server/xkeyboard-config/symbols/mn @@ -1,82 +1,82 @@ -// based on: -// Mongolian standard keyboard -// Author Sanlig Badral <badral@chinggis.com> -// 2002/12/7 Version 1.0 - -partial default alphanumeric_keys -xkb_symbols "basic" { - - name[Group1]= "Mongolia"; - - key <TLDE> { [ equal, plus, degree ] }; - key <AE01> { [ 1, numerosign, multiply ] }; - key <AE02> { [ 2, minus, division ] }; - key <AE03> { [ 3, quotedbl, plusminus ] }; - key <AE04> { [ 4, U20ae, notsign ] }; // Tugrik sign - key <AE05> { [ 5, colon, NoSymbol ] }; - key <AE06> { [ 6, period, notequal ] }; - key <AE07> { [ 7, underscore, ampersand ] }; - key <AE08> { [ 8, comma, asterisk ] }; - key <AE09> { [ 9, percent, bracketleft ] }; - key <AE10> { [ 0, question, bracketright ] }; - key <AE11> { [ Cyrillic_ie, Cyrillic_IE, X ] }; - key <AE12> { [ Cyrillic_shcha, Cyrillic_SHCHA, L ] }; - - key <AD01> { [ Cyrillic_ef, Cyrillic_EF, apostrophe ] }; - key <AD02> { [ Cyrillic_tse, Cyrillic_TSE, grave ] }; - key <AD03> { [ Cyrillic_u, Cyrillic_U, EuroSign ] }; - key <AD04> { [ Cyrillic_zhe, Cyrillic_ZHE, registered ] }; - key <AD05> { [ Cyrillic_e, Cyrillic_E, trademark ] }; - key <AD06> { [ Cyrillic_en, Cyrillic_EN, yen ] }; - key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE, doublelowquotemark ] }; - key <AD08> { [ Cyrillic_sha, Cyrillic_SHA, leftdoublequotemark ] }; - key <AD09> { [ Cyrillic_u_straight,Cyrillic_U_straight,rightdoublequotemark] }; - key <AD10> { [ Cyrillic_ze, Cyrillic_ZE, NoSymbol ] }; - key <AD11> { [ Cyrillic_ka, Cyrillic_KA, braceleft ] }; - key <AD12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, braceright ] }; - - key <AC01> { [ Cyrillic_shorti, Cyrillic_SHORTI, mu ] }; - key <AC02> { [ Cyrillic_yeru, Cyrillic_YERU, sterling ] }; - key <AC03> { [ Cyrillic_be, Cyrillic_BE, dollar ] }; - key <AC04> { [ Cyrillic_o_bar, Cyrillic_O_bar, rightdoublequotemark ] }; - key <AC05> { [ Cyrillic_a, Cyrillic_A, Cyrillic_yeru ] }; - key <AC06> { [ Cyrillic_ha, Cyrillic_HA, Cyrillic_YERU ] }; - key <AC07> { [ Cyrillic_er, Cyrillic_ER, Cyrillic_e ] }; - key <AC08> { [ Cyrillic_o, Cyrillic_O, Cyrillic_E ] }; - key <AC09> { [ Cyrillic_el, Cyrillic_EL, numerosign ] }; - key <AC10> { [ Cyrillic_de, Cyrillic_DE, section ] }; - key <AC11> { [ Cyrillic_pe, Cyrillic_PE, ellipsis ] }; - key <BKSL> { [ exclam, bar, bar ] }; - - key <LSGT> { [ parenleft, parenright, NoSymbol ] }; - key <AB01> { [ Cyrillic_ya, Cyrillic_YA, emdash ] }; - key <AB02> { [ Cyrillic_che, Cyrillic_CHE, endash ] }; - key <AB03> { [ Cyrillic_io, Cyrillic_IO, copyright ] }; - key <AB04> { [ Cyrillic_es, Cyrillic_ES, NoSymbol ] }; - key <AB05> { [ Cyrillic_em, Cyrillic_EM, NoSymbol ] }; - key <AB06> { [ Cyrillic_i, Cyrillic_I, less ] }; - key <AB07> { [ Cyrillic_te, Cyrillic_TE, greater ] }; - key <AB08> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN, guillemotleft ] }; - key <AB09> { [ Cyrillic_ve, Cyrillic_VE, guillemotright ] }; - key <AB10> { [ Cyrillic_yu, Cyrillic_YU, backslash ] }; - - // End alphanumeric section - - key <SPCE> { [ space, space, nobreakspace ] }; - - include "level3(ralt_switch)" -}; - -partial alphanumeric_keys -xkb_symbols "olpc" { - -// Contact: Walter Bender <walter@laptop.org> - - include "mn(basic)" - - key <AE07> { [ 7, semicolon, ampersand ] }; - - key <BKSL> { [ backslash, bar, exclam ] }; - - include "group(olpc)" -}; +// based on:
+// Mongolian standard keyboard
+// Author Sanlig Badral <badral@chinggis.com>
+// 2002/12/7 Version 1.0
+
+partial default alphanumeric_keys
+xkb_symbols "basic" {
+
+ name[Group1]= "Mongolia";
+
+ key <TLDE> { [ equal, plus, degree ] };
+ key <AE01> { [ 1, numerosign, multiply ] };
+ key <AE02> { [ 2, minus, division ] };
+ key <AE03> { [ 3, quotedbl, plusminus ] };
+ key <AE04> { [ 4, U20ae, notsign ] }; // Tugrik sign
+ key <AE05> { [ 5, colon, NoSymbol ] };
+ key <AE06> { [ 6, period, notequal ] };
+ key <AE07> { [ 7, underscore, ampersand ] };
+ key <AE08> { [ 8, comma, asterisk ] };
+ key <AE09> { [ 9, percent, bracketleft ] };
+ key <AE10> { [ 0, question, bracketright ] };
+ key <AE11> { [ Cyrillic_ie, Cyrillic_IE, X ] };
+ key <AE12> { [ Cyrillic_shcha, Cyrillic_SHCHA, L ] };
+
+ key <AD01> { [ Cyrillic_ef, Cyrillic_EF, apostrophe ] };
+ key <AD02> { [ Cyrillic_tse, Cyrillic_TSE, grave ] };
+ key <AD03> { [ Cyrillic_u, Cyrillic_U, EuroSign ] };
+ key <AD04> { [ Cyrillic_zhe, Cyrillic_ZHE, registered ] };
+ key <AD05> { [ Cyrillic_e, Cyrillic_E, trademark ] };
+ key <AD06> { [ Cyrillic_en, Cyrillic_EN, yen ] };
+ key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE, doublelowquotemark ] };
+ key <AD08> { [ Cyrillic_sha, Cyrillic_SHA, leftdoublequotemark ] };
+ key <AD09> { [ Cyrillic_u_straight,Cyrillic_U_straight,rightdoublequotemark] };
+ key <AD10> { [ Cyrillic_ze, Cyrillic_ZE, NoSymbol ] };
+ key <AD11> { [ Cyrillic_ka, Cyrillic_KA, braceleft ] };
+ key <AD12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, braceright ] };
+
+ key <AC01> { [ Cyrillic_shorti, Cyrillic_SHORTI, mu ] };
+ key <AC02> { [ Cyrillic_yeru, Cyrillic_YERU, sterling ] };
+ key <AC03> { [ Cyrillic_be, Cyrillic_BE, dollar ] };
+ key <AC04> { [ Cyrillic_o_bar, Cyrillic_O_bar, rightdoublequotemark ] };
+ key <AC05> { [ Cyrillic_a, Cyrillic_A, Cyrillic_yeru ] };
+ key <AC06> { [ Cyrillic_ha, Cyrillic_HA, Cyrillic_YERU ] };
+ key <AC07> { [ Cyrillic_er, Cyrillic_ER, Cyrillic_e ] };
+ key <AC08> { [ Cyrillic_o, Cyrillic_O, Cyrillic_E ] };
+ key <AC09> { [ Cyrillic_el, Cyrillic_EL, numerosign ] };
+ key <AC10> { [ Cyrillic_de, Cyrillic_DE, section ] };
+ key <AC11> { [ Cyrillic_pe, Cyrillic_PE, ellipsis ] };
+ key <BKSL> { [ exclam, bar, bar ] };
+
+ key <LSGT> { [ parenleft, parenright, NoSymbol ] };
+ key <AB01> { [ Cyrillic_ya, Cyrillic_YA, emdash ] };
+ key <AB02> { [ Cyrillic_che, Cyrillic_CHE, endash ] };
+ key <AB03> { [ Cyrillic_io, Cyrillic_IO, copyright ] };
+ key <AB04> { [ Cyrillic_es, Cyrillic_ES, NoSymbol ] };
+ key <AB05> { [ Cyrillic_em, Cyrillic_EM, NoSymbol ] };
+ key <AB06> { [ Cyrillic_i, Cyrillic_I, less ] };
+ key <AB07> { [ Cyrillic_te, Cyrillic_TE, greater ] };
+ key <AB08> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN, guillemotleft ] };
+ key <AB09> { [ Cyrillic_ve, Cyrillic_VE, guillemotright ] };
+ key <AB10> { [ Cyrillic_yu, Cyrillic_YU, backslash ] };
+
+ // End alphanumeric section
+
+ key <SPCE> { [ space, space, nobreakspace ] };
+
+ include "level3(ralt_switch)"
+};
+
+partial alphanumeric_keys
+xkb_symbols "olpc" {
+
+// Contact: Walter Bender <walter@laptop.org>
+
+ include "mn(basic)"
+
+ key <AE07> { [ 7, semicolon, ampersand ] };
+
+ key <BKSL> { [ backslash, bar, exclam ] };
+
+ include "group(olpc)"
+};
diff --git a/xorg-server/xkeyboard-config/symbols/nec_vndr/makefile b/xorg-server/xkeyboard-config/symbols/nec_vndr/makefile new file mode 100644 index 000000000..6ab523a2b --- /dev/null +++ b/xorg-server/xkeyboard-config/symbols/nec_vndr/makefile @@ -0,0 +1,12 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\symbols\nec_vndr + +dist_symbols_DATA = \ +jp + +DATA_FILES=$(dist_symbols_DATA:%=$(DESTDIR)\%) + +include ..\..\xkbrules.mak diff --git a/xorg-server/xkeyboard-config/symbols/nokia_vndr/makefile b/xorg-server/xkeyboard-config/symbols/nokia_vndr/makefile new file mode 100644 index 000000000..f3719bbac --- /dev/null +++ b/xorg-server/xkeyboard-config/symbols/nokia_vndr/makefile @@ -0,0 +1,14 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\symbols\nokia_vndr + +dist_symbols_DATA = \ +rx-44 \ +rx-51 \ +su-8w + +DATA_FILES=$(dist_symbols_DATA:%=$(DESTDIR)\%) + +include ..\..\xkbrules.mak diff --git a/xorg-server/xkeyboard-config/symbols/np b/xorg-server/xkeyboard-config/symbols/np index e139b0ff7..9cb14c873 100644 --- a/xorg-server/xkeyboard-config/symbols/np +++ b/xorg-server/xkeyboard-config/symbols/np @@ -1,121 +1,121 @@ -// based on a keyboard map from an 'xkb/symbols/dev' file - -partial default alphanumeric_keys -xkb_symbols "basic" { - - name[Group1]= "Nepal"; - -// `,1,2,3,4,5,6,7,8,9,0,-,= - - key <TLDE> { [ 0x100093D,0x100093C ] }; - key <AE01> { [ 0x1000967 ] }; - key <AE02> { [ 0x1000968 ] }; - key <AE03> { [ 0x1000969 ] }; - key <AE04> { [ 0x100096A ] }; - key <AE05> { [ 0x100096B ] }; - key <AE06> { [ 0x100096C ] }; - key <AE07> { [ 0x100096D ] }; - key <AE08> { [ 0x100096e ] }; - key <AE09> { [ 0x100096F ] }; - key <AE10> { [ 0x1000966,0x1000970 ] }; - key <AE11> { [ minus, 0x1000952 ] }; - key <AE12> { [ equal, 0x100200C ] }; - -// q,w,e,r,t,y,u,i,o,p,[,] - - key <AD01> { [ 0x100091F, 0x1000920 ] }; - key <AD02> { [ 0x100094C, 0x1000914 ] }; - key <AD03> { [ 0x1000947, 0x1000948 ] }; - key <AD04> { [ 0x1000930, 0x1000943 ] }; - key <AD05> { [ 0x1000924, 0x1000925 ] }; - key <AD06> { [ 0x100092F, 0x100091E ] }; - key <AD07> { [ 0x1000941, 0x1000942 ] }; - key <AD08> { [ 0x100093F, 0x1000940 ] }; - key <AD09> { [ 0x100094B, 0x1000913 ] }; - key <AD10> { [ 0x100092A, 0x100092B ] }; - key <AD11> { [ 0x1000907, 0x1000908 ] }; - key <AD12> { [ 0x100090F, 0x1000910 ] }; - -// a,s,d,f,g,h,j,k,l,;,',Backslash - key <AC01> { [ 0x100093E, 0x1000906 ] }; - key <AC02> { [ 0x1000938, 0x1000936 ] }; - key <AC03> { [ 0x1000926, 0x1000927 ] }; - key <AC04> { [ 0x1000909, 0x100090A ] }; - key <AC05> { [ 0x1000917, 0x1000918 ] }; - key <AC06> { [ 0x1000939, 0x1000905 ] }; - key <AC07> { [ 0x100091C, 0x100091D ] }; - key <AC08> { [ 0x1000915, 0x1000916 ] }; - key <AC09> { [ 0x1000932, 0x1000933 ] }; - key <AC10> { [ semicolon, colon ] }; - key <AC11> { [ quoteright, quotedbl ] }; - key <BKSL> { [ 0x1000950, 0x1000903 ] }; - - -// z,x,c,v,b,n,m,,,.,/ - key <AB01> { [ 0x1000937, 0x100090B ] }; - key <AB02> { [ 0x1000921, 0x1000922 ] }; - key <AB03> { [ 0x100091B, 0x100091A ] }; - key <AB04> { [ 0x1000935, 0x1000901 ] }; - key <AB05> { [ 0x100092C, 0x100092D ] }; - key <AB06> { [ 0x1000928, 0x1000923 ] }; - key <AB07> { [ 0x100092E, 0x1000902 ] }; - key <AB08> { [ comma, 0x1000919 ] }; - key <AB09> { [ 0x1000964, 0x1000965 ] }; - key <AB10> { [ 0x100094D, question ] }; -}; - -partial alphanumeric_keys - -xkb_symbols "olpc" { -// Contact: Walter Bender <walter@laptop.org> - - include "np" - key <TLDE> { [ 0x100091E, 0x1000965 ] }; // NYA; double danda - key <AE01> { [ 0x1000967, 0x10FFFFD ] }; // Nepali digit one; U091C+U094D+U091E - key <AE02> { [ 0x1000968, 0x1000908 ] }; // Nepali digit two; key <AE03> { [ 0x1000969, 0x1000918 ] }; // Nepali digit three; - key <AE04> { [ 0x100096A, 0x10FFFFC ] }; // Nepali digit four; U0926+U094D+U0927 - key <AE05> { [ 0x100096B, 0x100091B ] }; // Nepali digit five - key <AE06> { [ 0x100096C, 0x100091F ] }; // Nepali digit six - key <AE07> { [ 0x100096D, 0x1000920 ] }; // Nepali digit seven - key <AE08> { [ 0x100096e, 0x1000921 ] }; // Nepali digit eight - key <AE09> { [ 0x100096F, 0x1000922 ] }; // Nepali digit nine - key <AE10> { [ 0x1000966, 0x1000923 ] }; // Nepali digit zero - key <AE11> { [ 0x1000914, 0x1000913 ] }; // O, AU - key <AE12> { [ 0x100200C, 0x1000902 ] }; // ZERO-WIDTH-NON-JOINER (ZWNJ); SIGN ANUSVARA - key <BKSL> { [ 0x100094D, 0x100200D ] }; // SIGN VIRAMA; ZERO-WIDTH-JOINER (ZWJ) - key <AD01> { [ 0x10FFFFB, 0x10FFFFA ] }; // U0924+U094D+U0930; U0924+U094D+U0924 - key <AD02> { [ 0x1000927, 0x10FFFF9 ] }; // DHA; U0921+U094D+U0922 - key <AD03> { [ 0x100092D, 0x1000910 ] }; // BHA, AI - key <AD04> { [ 0x100091A, 0x10FFFF8 ] }; // CA; U0926+U094D+U0935 - key <AD05> { [ 0x1000924, 0x10FFFF7 ] }; // TA; U091F+U094D+U091F - key <AD06> { [ 0x1000925, 0x10FFFF6 ] }; // THA; U0920+U094D+U0920 - key <AD07> { [ 0x1000917, 0x100090A ] }; // GA, UU - key <AD08> { [ 0x1000937, 0x10FFFF5 ] }; // SSA; U0915+U094D+U0937 - key <AD09> { [ 0x100092F, 0x1000907 ] }; // YA, I - key <AD10> { [ 0x1000909, 0x100090F ] }; // U, E - key <AD11> { [ 0x10FFFF4, 0x1000943 ] }; // U0928+U094D+ZWJ; VOWEL SIGN VOCALIC R - key <AD12> { [ 0x1000947, 0x1000948 ] }; // SIGN E; SIGN AI - key <AC01> { [ 0x100092C, 0x1000906 ] }; // BA, AA - key <AC02> { [ 0x1000915, 0x10FFFF3 ] }; // KA; U0919+U094D+U0915 - key <AC03> { [ 0x100092E, 0x10FFFF2 ] }; // MA; U0919+U094D+U0917 - key <AC04> { [ 0x100093E, 0x1000901 ] }; // CANDRABINDU, VOWEL SIGN AA - key <AC05> { [ 0x1000928, 0x10FFFF1 ] }; // NA; U0926+U094D+U0926 - key <AC06> { [ 0x100091C, 0x100091D ] }; // JA, JHA - key <AC07> { [ 0x1000935, 0x100094B ] }; // VA, VOWEL SIGN O - key <AC08> { [ 0x100092A, 0x100092B ] }; // PA, PHA - key <AC09> { [ 0x100093F, 0x1000940 ] }; // VOWEL SIGN I, VOWEL SIGN II - key <AC10> { [ 0x1000938, 0x10FFFF0 ] }; // SA; U091F+U094D+U0920 - key <AC11> { [ 0x1000941, 0x1000942 ] }; // VOWEL SIGN U, VOWEL SIGN UU - key <AB01> { [ 0x1000936, 0x10FFFEF ] }; // SHA; U0915+U094D+U0915 - key <AB02> { [ 0x1000939, 0x10FFFEE ] }; // HA; U0939+U094D+U092F - key <AB03> { [ 0x1000905, 0x100090B ] }; // A; U0909+U090B - key <AB04> { [ 0x1000916, 0x1000950 ] }; // KHA, OM - key <AB05> { [ 0x1000926, 0x100094C ] }; // DA, VOWEL SIGN AU - key <AB06> { [ 0x1000932, 0x10FFFED ] }; // LA; U0926+U094D+U092F - key <AB07> { [ 0x1000903, 0x10FFFEC ] }; // SIGN VISARGA; U0921+U094D+U0921 - key <AB08> { [ 0x100093D, 0x1000919 ] }; // SIGN AVAGRHA; NGA - key <AB09> { [ 0x1000964, 0x10FFFEB ] }; // DANDA; U0936+U094D+U0930 - key <AB10> { [ 0x1000930, 0x10FFFEA ] }; // RA; U0930+U0941 - - include "group(olpc)" -}; +// based on a keyboard map from an 'xkb/symbols/dev' file
+
+partial default alphanumeric_keys
+xkb_symbols "basic" {
+
+ name[Group1]= "Nepal";
+
+// `,1,2,3,4,5,6,7,8,9,0,-,=
+
+ key <TLDE> { [ 0x100093D,0x100093C ] };
+ key <AE01> { [ 0x1000967 ] };
+ key <AE02> { [ 0x1000968 ] };
+ key <AE03> { [ 0x1000969 ] };
+ key <AE04> { [ 0x100096A ] };
+ key <AE05> { [ 0x100096B ] };
+ key <AE06> { [ 0x100096C ] };
+ key <AE07> { [ 0x100096D ] };
+ key <AE08> { [ 0x100096e ] };
+ key <AE09> { [ 0x100096F ] };
+ key <AE10> { [ 0x1000966,0x1000970 ] };
+ key <AE11> { [ minus, 0x1000952 ] };
+ key <AE12> { [ equal, 0x100200C ] };
+
+// q,w,e,r,t,y,u,i,o,p,[,]
+
+ key <AD01> { [ 0x100091F, 0x1000920 ] };
+ key <AD02> { [ 0x100094C, 0x1000914 ] };
+ key <AD03> { [ 0x1000947, 0x1000948 ] };
+ key <AD04> { [ 0x1000930, 0x1000943 ] };
+ key <AD05> { [ 0x1000924, 0x1000925 ] };
+ key <AD06> { [ 0x100092F, 0x100091E ] };
+ key <AD07> { [ 0x1000941, 0x1000942 ] };
+ key <AD08> { [ 0x100093F, 0x1000940 ] };
+ key <AD09> { [ 0x100094B, 0x1000913 ] };
+ key <AD10> { [ 0x100092A, 0x100092B ] };
+ key <AD11> { [ 0x1000907, 0x1000908 ] };
+ key <AD12> { [ 0x100090F, 0x1000910 ] };
+
+// a,s,d,f,g,h,j,k,l,;,',Backslash
+ key <AC01> { [ 0x100093E, 0x1000906 ] };
+ key <AC02> { [ 0x1000938, 0x1000936 ] };
+ key <AC03> { [ 0x1000926, 0x1000927 ] };
+ key <AC04> { [ 0x1000909, 0x100090A ] };
+ key <AC05> { [ 0x1000917, 0x1000918 ] };
+ key <AC06> { [ 0x1000939, 0x1000905 ] };
+ key <AC07> { [ 0x100091C, 0x100091D ] };
+ key <AC08> { [ 0x1000915, 0x1000916 ] };
+ key <AC09> { [ 0x1000932, 0x1000933 ] };
+ key <AC10> { [ semicolon, colon ] };
+ key <AC11> { [ quoteright, quotedbl ] };
+ key <BKSL> { [ 0x1000950, 0x1000903 ] };
+
+
+// z,x,c,v,b,n,m,,,.,/
+ key <AB01> { [ 0x1000937, 0x100090B ] };
+ key <AB02> { [ 0x1000921, 0x1000922 ] };
+ key <AB03> { [ 0x100091B, 0x100091A ] };
+ key <AB04> { [ 0x1000935, 0x1000901 ] };
+ key <AB05> { [ 0x100092C, 0x100092D ] };
+ key <AB06> { [ 0x1000928, 0x1000923 ] };
+ key <AB07> { [ 0x100092E, 0x1000902 ] };
+ key <AB08> { [ comma, 0x1000919 ] };
+ key <AB09> { [ 0x1000964, 0x1000965 ] };
+ key <AB10> { [ 0x100094D, question ] };
+};
+
+partial alphanumeric_keys
+
+xkb_symbols "olpc" {
+// Contact: Walter Bender <walter@laptop.org>
+
+ include "np"
+ key <TLDE> { [ 0x100091E, 0x1000965 ] }; // NYA; double danda
+ key <AE01> { [ 0x1000967, 0x10FFFFD ] }; // Nepali digit one; U091C+U094D+U091E
+ key <AE02> { [ 0x1000968, 0x1000908 ] }; // Nepali digit two; key <AE03> { [ 0x1000969, 0x1000918 ] }; // Nepali digit three;
+ key <AE04> { [ 0x100096A, 0x10FFFFC ] }; // Nepali digit four; U0926+U094D+U0927
+ key <AE05> { [ 0x100096B, 0x100091B ] }; // Nepali digit five
+ key <AE06> { [ 0x100096C, 0x100091F ] }; // Nepali digit six
+ key <AE07> { [ 0x100096D, 0x1000920 ] }; // Nepali digit seven
+ key <AE08> { [ 0x100096e, 0x1000921 ] }; // Nepali digit eight
+ key <AE09> { [ 0x100096F, 0x1000922 ] }; // Nepali digit nine
+ key <AE10> { [ 0x1000966, 0x1000923 ] }; // Nepali digit zero
+ key <AE11> { [ 0x1000914, 0x1000913 ] }; // O, AU
+ key <AE12> { [ 0x100200C, 0x1000902 ] }; // ZERO-WIDTH-NON-JOINER (ZWNJ); SIGN ANUSVARA
+ key <BKSL> { [ 0x100094D, 0x100200D ] }; // SIGN VIRAMA; ZERO-WIDTH-JOINER (ZWJ)
+ key <AD01> { [ 0x10FFFFB, 0x10FFFFA ] }; // U0924+U094D+U0930; U0924+U094D+U0924
+ key <AD02> { [ 0x1000927, 0x10FFFF9 ] }; // DHA; U0921+U094D+U0922
+ key <AD03> { [ 0x100092D, 0x1000910 ] }; // BHA, AI
+ key <AD04> { [ 0x100091A, 0x10FFFF8 ] }; // CA; U0926+U094D+U0935
+ key <AD05> { [ 0x1000924, 0x10FFFF7 ] }; // TA; U091F+U094D+U091F
+ key <AD06> { [ 0x1000925, 0x10FFFF6 ] }; // THA; U0920+U094D+U0920
+ key <AD07> { [ 0x1000917, 0x100090A ] }; // GA, UU
+ key <AD08> { [ 0x1000937, 0x10FFFF5 ] }; // SSA; U0915+U094D+U0937
+ key <AD09> { [ 0x100092F, 0x1000907 ] }; // YA, I
+ key <AD10> { [ 0x1000909, 0x100090F ] }; // U, E
+ key <AD11> { [ 0x10FFFF4, 0x1000943 ] }; // U0928+U094D+ZWJ; VOWEL SIGN VOCALIC R
+ key <AD12> { [ 0x1000947, 0x1000948 ] }; // SIGN E; SIGN AI
+ key <AC01> { [ 0x100092C, 0x1000906 ] }; // BA, AA
+ key <AC02> { [ 0x1000915, 0x10FFFF3 ] }; // KA; U0919+U094D+U0915
+ key <AC03> { [ 0x100092E, 0x10FFFF2 ] }; // MA; U0919+U094D+U0917
+ key <AC04> { [ 0x100093E, 0x1000901 ] }; // CANDRABINDU, VOWEL SIGN AA
+ key <AC05> { [ 0x1000928, 0x10FFFF1 ] }; // NA; U0926+U094D+U0926
+ key <AC06> { [ 0x100091C, 0x100091D ] }; // JA, JHA
+ key <AC07> { [ 0x1000935, 0x100094B ] }; // VA, VOWEL SIGN O
+ key <AC08> { [ 0x100092A, 0x100092B ] }; // PA, PHA
+ key <AC09> { [ 0x100093F, 0x1000940 ] }; // VOWEL SIGN I, VOWEL SIGN II
+ key <AC10> { [ 0x1000938, 0x10FFFF0 ] }; // SA; U091F+U094D+U0920
+ key <AC11> { [ 0x1000941, 0x1000942 ] }; // VOWEL SIGN U, VOWEL SIGN UU
+ key <AB01> { [ 0x1000936, 0x10FFFEF ] }; // SHA; U0915+U094D+U0915
+ key <AB02> { [ 0x1000939, 0x10FFFEE ] }; // HA; U0939+U094D+U092F
+ key <AB03> { [ 0x1000905, 0x100090B ] }; // A; U0909+U090B
+ key <AB04> { [ 0x1000916, 0x1000950 ] }; // KHA, OM
+ key <AB05> { [ 0x1000926, 0x100094C ] }; // DA, VOWEL SIGN AU
+ key <AB06> { [ 0x1000932, 0x10FFFED ] }; // LA; U0926+U094D+U092F
+ key <AB07> { [ 0x1000903, 0x10FFFEC ] }; // SIGN VISARGA; U0921+U094D+U0921
+ key <AB08> { [ 0x100093D, 0x1000919 ] }; // SIGN AVAGRHA; NGA
+ key <AB09> { [ 0x1000964, 0x10FFFEB ] }; // DANDA; U0936+U094D+U0930
+ key <AB10> { [ 0x1000930, 0x10FFFEA ] }; // RA; U0930+U0941
+
+ include "group(olpc)"
+};
diff --git a/xorg-server/xkeyboard-config/symbols/ro b/xorg-server/xkeyboard-config/symbols/ro index f37a60dac..44660ad1e 100644 --- a/xorg-server/xkeyboard-config/symbols/ro +++ b/xorg-server/xkeyboard-config/symbols/ro @@ -1,255 +1,255 @@ -// -// Complete set of Romanian keyboards as described in the new Romanian standard -// SR 13392:2004 adopted in December 2004 by ASRO, "Asociatia de Standardizare -// din Romania". -// -// The default mapping is the RO_US/Programmers layout because of the lack of -// Romanian hardware keyboards. The primary standard layout is implemented as -// the "std" variant. If you're determined to get cedillas as in ISO-8859-2 -// (and not commabelow accents as in ISO-8859-16) use the defined variants -// "cedilla" for the default layout or "std_cedilla" for the standard one. -// Pre-Vista MS compatible layout included (use the "winkeys" variant). -// -// Created by Cristian Gafton, <gafton@redhat.com> (C) 2000 -// Modified by Marius Andreiana, <mandreiana@yahoo.com> (C) 2001 -// Completed by Misu Moldovan, <dumol@gnome.ro> (C) 2001, 2004-2008. -// v 1.4 - - -partial default alphanumeric_keys -xkb_symbols "basic" { -// This RO_US/Programmers layout, although the secondary layout in the -// Romanian standard, has always been the "de facto" standard in the -// Linux/Unix world. It is implemented here as the default layout and it's -// fully compatible with an US keyboard (Euro on AltGr+5 doesn't count). - - include "us" - - name[Group1]="Romania"; - - key <AE01> { [ 1, exclam, dead_tilde ] }; - key <AE02> { [ 2, at, dead_caron ] }; - key <AE03> { [ 3, numbersign, dead_circumflex ] }; - key <AE04> { [ 4, dollar, dead_breve ] }; - key <AE05> { [ 5, percent, dead_abovering ] }; - key <AE06> { [ 6, asciicircum, dead_ogonek ] }; - key <AE07> { [ 7, ampersand, dead_grave ] }; - key <AE08> { [ 8, asterisk, dead_abovedot ] }; - key <AE09> { [ 9, parenleft, dead_acute ] }; - key <AE10> { [ 0, parenright, dead_doubleacute ] }; - key <AE11> { [ minus, underscore, dead_diaeresis, endash ] }; - key <AE12> { [ equal, plus, dead_cedilla, plusminus ] }; - key <AD01> { [ q, Q, acircumflex, Acircumflex ] }; - key <AD02> { [ w, W, ssharp ] }; - key <AD03> { [ e, E, EuroSign ] }; - key <AD05> { [ t, T, 0x100021b, 0x100021a ] }; - key <AD08> { [ i, I, icircumflex, Icircumflex ] }; - key <AD10> { [ p, P, section ] }; - key <AD11> { [ bracketleft, braceleft, doublelowquotemark ] }; - key <AD12> { [ bracketright, braceright, rightdoublequotemark ] }; - key <AC01> { [ a, A, abreve, Abreve ] }; - key <AC02> { [ s, S, 0x1000219, 0x1000218 ] }; - key <AC03> { [ d, D, dstroke, Dstroke ] }; - key <AC09> { [ l, L, lstroke, Lstroke ] }; - key <LSGT> { [ backslash, bar ] }; - key <AB03> { [ c, C, copyright ] }; - key <AB08> { [ comma, less, guillemotleft ] }; - key <AB09> { [ period, greater, guillemotright ] }; - - include "level3(ralt_switch)" -}; - -partial alphanumeric_keys -xkb_symbols "cedilla" { - // Variant of the basic layout with cedillas. - // Implements S and T with cedilllas as in ISO-8859-2. - // Included for compatibility reasons (this used to be the def variant). - - include "ro(basic)" - - name[Group1]="Romania - Cedilla"; - - key <AD05> { [ t, T, tcedilla, Tcedilla ] }; - key <AC02> { [ s, S, scedilla, Scedilla ] }; -}; - -partial alphanumeric_keys -xkb_symbols "std" { - // Primary layout in the new Romanian standard. - // Implemented here as a variant because of the lack of hardware - // Romanian keyboards and because of the predilection of Romanian - // X users towards the secondary layout from the new standard. - - include "us" - - name[Group1]="Romania - Standard"; - - key <TLDE> { [ doublelowquotemark, rightdoublequotemark, grave, asciitilde ] }; - key <AE01> { [ 1, exclam, dead_tilde ] }; - key <AE02> { [ 2, at, dead_caron ] }; - key <AE03> { [ 3, numbersign, dead_circumflex ] }; - key <AE04> { [ 4, dollar, dead_breve ] }; - key <AE05> { [ 5, percent, dead_abovering ] }; - key <AE06> { [ 6, asciicircum, dead_ogonek ] }; - key <AE07> { [ 7, ampersand, dead_grave ] }; - key <AE08> { [ 8, asterisk, dead_abovedot ] }; - key <AE09> { [ 9, parenleft, dead_acute ] }; - key <AE10> { [ 0, parenright, dead_doubleacute ] }; - key <AE11> { [ minus, underscore, dead_diaeresis, endash ] }; - key <AE12> { [ equal, plus, dead_cedilla, plusminus ] }; - key <AD03> { [ e, E, EuroSign ] }; - key <AD10> { [ p, P, section ] }; - key <AD11> { [ abreve, Abreve, bracketleft, braceleft ] }; - key <AD12> { [ icircumflex, Icircumflex, bracketright, braceright ] }; - key <BKSL> { [ acircumflex, Acircumflex, backslash, bar ] }; - key <AC02> { [ s, S, ssharp ] }; - key <AC03> { [ d, D, dstroke, Dstroke ] }; - key <AC09> { [ l, L, lstroke, Lstroke ] }; - key <AC10> { [ 0x1000219, 0x1000218, semicolon, colon ] }; - key <AC11> { [ 0x100021b, 0x100021a, apostrophe, quotedbl ] }; - key <LSGT> { [ backslash, bar ] }; - key <AB03> { [ c, C, copyright ] }; - key <AB08> { [ comma, semicolon, less, guillemotleft ] }; - key <AB09> { [ period, colon, greater, guillemotright ] }; - - key <KPDL> { [ KP_Delete, KP_Separator ] }; - - include "level3(ralt_switch)" -}; - - -partial alphanumeric_keys -xkb_symbols "std_cedilla" { - // Variant of the "std" layout with cedillas. - // Implements S and T with cedillas as in ISO-8859-2. - // Included for compatibility reasons. - - include "ro(std)" - - name[Group1]="Romania - Standard (Cedilla)"; - - key <AC10> { [ scedilla, Scedilla ] }; - key <AC11> { [ tcedilla, Tcedilla ] }; -}; - - -partial alphanumeric_keys -xkb_symbols "winkeys" { - // Describes the differences between a very simple US/ASCII - // keyboard and a very simple Romanian keybaord - // Created by Manfred Pohler, <Manfred.Pohler@t-online.de> (C) 2003 - - include "latin" - - name[Group1]="Romania - Winkeys"; - - // Alphanumeric section - key <TLDE> { [ bracketright, bracketleft ] }; - - key <AE01> { [ 1, exclam, asciitilde, asciitilde ] }; - key <AE02> { [ 2, quotedbl, at, at ] }; - key <AE03> { [ 3, numbersign, asciicircum,asciicircum ] }; - key <AE04> { [ 4, currency ] }; - key <AE05> { [ 5, percent, degree, degree ] }; - key <AE06> { [ 6, ampersand ] }; - key <AE07> { [ 7, slash, grave, grave ] }; - key <AE08> { [ 8, parenleft ] }; - key <AE09> { [ 9, parenright ] }; - key <AE10> { [ 0, equal ] }; - key <AE11> { [ plus, question ] }; - key <AE12> { [ apostrophe, asterisk ] }; - - key <AD01> { [ q, Q, backslash, backslash ] }; - key <AD02> { [ w, W, bar, bar ] }; - key <AD03> { [ e, E, EuroSign, EuroSign ] }; - key <AD05> { [ t, T ] }; - key <AD06> { [ z, Z ] }; - key <AD07> { [ u, U ] }; - key <AD08> { [ i, I ] }; - key <AD11> { [ abreve, Abreve, division, division ] }; - key <AD12> { [ icircumflex, Icircumflex, multiply, multiply ] }; - - key <AC04> { [ f, F ] }; - key <AC05> { [ g, G ] }; - key <AC10> { [ scedilla, Scedilla, dollar, dollar ] }; - key <AC11> { [ tcedilla, Tcedilla, ssharp, ssharp ] }; - - key <AB01> { [ y, Y ] }; - key <AB05> { [ b, B, braceleft, braceleft ] }; - key <AB06> { [ n, N, braceright, braceright ] }; - key <AB07> { [ m, M, section, section ] }; - key <AB08> { [ comma, semicolon, less, less ] }; - key <AB09> { [ period, colon, greater, greater ] }; - key <AB10> { [ minus, underscore ] }; - - key <BKSL> { [ acircumflex, Acircumflex ] }; - - // End alphanumeric section, begin "Keypad" - include "kpdl(comma)" - // End "Keypad" section - - include "level3(ralt_switch)" - -}; - -// Crimean Tatar (Crimean Turkish) layouts. -partial -xkb_symbols "crh_f" { - include "tr(crh_f)" - - name[Group1]="Romania - Crimean Tatar (Turkish F)"; -}; - -partial -xkb_symbols "crh_alt" { - include "tr(crh_alt)" - - name[Group1]="Romania - Crimean Tatar (Turkish Alt-Q)"; -}; - -partial -xkb_symbols "crh_dobruca1" { - include "tr(crh)" - - name[Group1]="Romania - Crimean Tatar (Dobruca-1 Q)"; - - key <AD05> { [ t, T, tcedilla, Tcedilla ] }; - key <AD10> { [ p, P, abreve, Abreve ] }; - - key <AC04> { [ f, F, ibreve, Ibreve ] }; - key <AC07> { [ iacute, Iacute, j, J ] }; - - key <AB07> { [ m, M, trademark, masculine ] }; -}; - -partial -xkb_symbols "crh_dobruca2" { - include "ro(crh_dobruca1)" - - name[Group1]="Romania - Crimean Tatar (Dobruca-2 Q)"; - - key <AC04> { [ f, F, iacute, Iacute ] }; - key <AC07> { [ ibreve, Ibreve, j, J ] }; -}; - -// EXTRAS: - -partial alphanumeric_keys -xkb_symbols "ergonomic" { - // This layout is optimized for fast touch-typing in Romanian on a - // US keyboard, and works by swapping out symbols infrequently used - // in written Romanian (q,w,y,k) in favor of native ones, thus reducing - // the need to use modifier keys. - // Created by Gabriel Somlo, <somlo@cmu.edu> (C) 2011 - - include "ro(basic)" - - name[Group1]="Romania - Ergonomic Touchtype"; - - key <AD01> { [ abreve, Abreve, q, Q ] }; - key <AD02> { [ 0x1000219, 0x1000218, w, W ] }; - key <AD06> { [ 0x100021b, 0x100021a, y, Y ] }; - key <AC01> { [ a, A, acircumflex, Acircumflex ] }; - key <AC08> { [ icircumflex, Icircumflex, k, K ] }; -}; - +//
+// Complete set of Romanian keyboards as described in the new Romanian standard
+// SR 13392:2004 adopted in December 2004 by ASRO, "Asociatia de Standardizare
+// din Romania".
+//
+// The default mapping is the RO_US/Programmers layout because of the lack of
+// Romanian hardware keyboards. The primary standard layout is implemented as
+// the "std" variant. If you're determined to get cedillas as in ISO-8859-2
+// (and not commabelow accents as in ISO-8859-16) use the defined variants
+// "cedilla" for the default layout or "std_cedilla" for the standard one.
+// Pre-Vista MS compatible layout included (use the "winkeys" variant).
+//
+// Created by Cristian Gafton, <gafton@redhat.com> (C) 2000
+// Modified by Marius Andreiana, <mandreiana@yahoo.com> (C) 2001
+// Completed by Misu Moldovan, <dumol@gnome.ro> (C) 2001, 2004-2008.
+// v 1.4
+
+
+partial default alphanumeric_keys
+xkb_symbols "basic" {
+// This RO_US/Programmers layout, although the secondary layout in the
+// Romanian standard, has always been the "de facto" standard in the
+// Linux/Unix world. It is implemented here as the default layout and it's
+// fully compatible with an US keyboard (Euro on AltGr+5 doesn't count).
+
+ include "us"
+
+ name[Group1]="Romania";
+
+ key <AE01> { [ 1, exclam, dead_tilde ] };
+ key <AE02> { [ 2, at, dead_caron ] };
+ key <AE03> { [ 3, numbersign, dead_circumflex ] };
+ key <AE04> { [ 4, dollar, dead_breve ] };
+ key <AE05> { [ 5, percent, dead_abovering ] };
+ key <AE06> { [ 6, asciicircum, dead_ogonek ] };
+ key <AE07> { [ 7, ampersand, dead_grave ] };
+ key <AE08> { [ 8, asterisk, dead_abovedot ] };
+ key <AE09> { [ 9, parenleft, dead_acute ] };
+ key <AE10> { [ 0, parenright, dead_doubleacute ] };
+ key <AE11> { [ minus, underscore, dead_diaeresis, endash ] };
+ key <AE12> { [ equal, plus, dead_cedilla, plusminus ] };
+ key <AD01> { [ q, Q, acircumflex, Acircumflex ] };
+ key <AD02> { [ w, W, ssharp ] };
+ key <AD03> { [ e, E, EuroSign ] };
+ key <AD05> { [ t, T, 0x100021b, 0x100021a ] };
+ key <AD08> { [ i, I, icircumflex, Icircumflex ] };
+ key <AD10> { [ p, P, section ] };
+ key <AD11> { [ bracketleft, braceleft, doublelowquotemark ] };
+ key <AD12> { [ bracketright, braceright, rightdoublequotemark ] };
+ key <AC01> { [ a, A, abreve, Abreve ] };
+ key <AC02> { [ s, S, 0x1000219, 0x1000218 ] };
+ key <AC03> { [ d, D, dstroke, Dstroke ] };
+ key <AC09> { [ l, L, lstroke, Lstroke ] };
+ key <LSGT> { [ backslash, bar ] };
+ key <AB03> { [ c, C, copyright ] };
+ key <AB08> { [ comma, less, guillemotleft ] };
+ key <AB09> { [ period, greater, guillemotright ] };
+
+ include "level3(ralt_switch)"
+};
+
+partial alphanumeric_keys
+xkb_symbols "cedilla" {
+ // Variant of the basic layout with cedillas.
+ // Implements S and T with cedilllas as in ISO-8859-2.
+ // Included for compatibility reasons (this used to be the def variant).
+
+ include "ro(basic)"
+
+ name[Group1]="Romania - Cedilla";
+
+ key <AD05> { [ t, T, tcedilla, Tcedilla ] };
+ key <AC02> { [ s, S, scedilla, Scedilla ] };
+};
+
+partial alphanumeric_keys
+xkb_symbols "std" {
+ // Primary layout in the new Romanian standard.
+ // Implemented here as a variant because of the lack of hardware
+ // Romanian keyboards and because of the predilection of Romanian
+ // X users towards the secondary layout from the new standard.
+
+ include "us"
+
+ name[Group1]="Romania - Standard";
+
+ key <TLDE> { [ doublelowquotemark, rightdoublequotemark, grave, asciitilde ] };
+ key <AE01> { [ 1, exclam, dead_tilde ] };
+ key <AE02> { [ 2, at, dead_caron ] };
+ key <AE03> { [ 3, numbersign, dead_circumflex ] };
+ key <AE04> { [ 4, dollar, dead_breve ] };
+ key <AE05> { [ 5, percent, dead_abovering ] };
+ key <AE06> { [ 6, asciicircum, dead_ogonek ] };
+ key <AE07> { [ 7, ampersand, dead_grave ] };
+ key <AE08> { [ 8, asterisk, dead_abovedot ] };
+ key <AE09> { [ 9, parenleft, dead_acute ] };
+ key <AE10> { [ 0, parenright, dead_doubleacute ] };
+ key <AE11> { [ minus, underscore, dead_diaeresis, endash ] };
+ key <AE12> { [ equal, plus, dead_cedilla, plusminus ] };
+ key <AD03> { [ e, E, EuroSign ] };
+ key <AD10> { [ p, P, section ] };
+ key <AD11> { [ abreve, Abreve, bracketleft, braceleft ] };
+ key <AD12> { [ icircumflex, Icircumflex, bracketright, braceright ] };
+ key <BKSL> { [ acircumflex, Acircumflex, backslash, bar ] };
+ key <AC02> { [ s, S, ssharp ] };
+ key <AC03> { [ d, D, dstroke, Dstroke ] };
+ key <AC09> { [ l, L, lstroke, Lstroke ] };
+ key <AC10> { [ 0x1000219, 0x1000218, semicolon, colon ] };
+ key <AC11> { [ 0x100021b, 0x100021a, apostrophe, quotedbl ] };
+ key <LSGT> { [ backslash, bar ] };
+ key <AB03> { [ c, C, copyright ] };
+ key <AB08> { [ comma, semicolon, less, guillemotleft ] };
+ key <AB09> { [ period, colon, greater, guillemotright ] };
+
+ key <KPDL> { [ KP_Delete, KP_Separator ] };
+
+ include "level3(ralt_switch)"
+};
+
+
+partial alphanumeric_keys
+xkb_symbols "std_cedilla" {
+ // Variant of the "std" layout with cedillas.
+ // Implements S and T with cedillas as in ISO-8859-2.
+ // Included for compatibility reasons.
+
+ include "ro(std)"
+
+ name[Group1]="Romania - Standard (Cedilla)";
+
+ key <AC10> { [ scedilla, Scedilla ] };
+ key <AC11> { [ tcedilla, Tcedilla ] };
+};
+
+
+partial alphanumeric_keys
+xkb_symbols "winkeys" {
+ // Describes the differences between a very simple US/ASCII
+ // keyboard and a very simple Romanian keybaord
+ // Created by Manfred Pohler, <Manfred.Pohler@t-online.de> (C) 2003
+
+ include "latin"
+
+ name[Group1]="Romania - Winkeys";
+
+ // Alphanumeric section
+ key <TLDE> { [ bracketright, bracketleft ] };
+
+ key <AE01> { [ 1, exclam, asciitilde, asciitilde ] };
+ key <AE02> { [ 2, quotedbl, at, at ] };
+ key <AE03> { [ 3, numbersign, asciicircum,asciicircum ] };
+ key <AE04> { [ 4, currency ] };
+ key <AE05> { [ 5, percent, degree, degree ] };
+ key <AE06> { [ 6, ampersand ] };
+ key <AE07> { [ 7, slash, grave, grave ] };
+ key <AE08> { [ 8, parenleft ] };
+ key <AE09> { [ 9, parenright ] };
+ key <AE10> { [ 0, equal ] };
+ key <AE11> { [ plus, question ] };
+ key <AE12> { [ apostrophe, asterisk ] };
+
+ key <AD01> { [ q, Q, backslash, backslash ] };
+ key <AD02> { [ w, W, bar, bar ] };
+ key <AD03> { [ e, E, EuroSign, EuroSign ] };
+ key <AD05> { [ t, T ] };
+ key <AD06> { [ z, Z ] };
+ key <AD07> { [ u, U ] };
+ key <AD08> { [ i, I ] };
+ key <AD11> { [ abreve, Abreve, division, division ] };
+ key <AD12> { [ icircumflex, Icircumflex, multiply, multiply ] };
+
+ key <AC04> { [ f, F ] };
+ key <AC05> { [ g, G ] };
+ key <AC10> { [ scedilla, Scedilla, dollar, dollar ] };
+ key <AC11> { [ tcedilla, Tcedilla, ssharp, ssharp ] };
+
+ key <AB01> { [ y, Y ] };
+ key <AB05> { [ b, B, braceleft, braceleft ] };
+ key <AB06> { [ n, N, braceright, braceright ] };
+ key <AB07> { [ m, M, section, section ] };
+ key <AB08> { [ comma, semicolon, less, less ] };
+ key <AB09> { [ period, colon, greater, greater ] };
+ key <AB10> { [ minus, underscore ] };
+
+ key <BKSL> { [ acircumflex, Acircumflex ] };
+
+ // End alphanumeric section, begin "Keypad"
+ include "kpdl(comma)"
+ // End "Keypad" section
+
+ include "level3(ralt_switch)"
+
+};
+
+// Crimean Tatar (Crimean Turkish) layouts.
+partial
+xkb_symbols "crh_f" {
+ include "tr(crh_f)"
+
+ name[Group1]="Romania - Crimean Tatar (Turkish F)";
+};
+
+partial
+xkb_symbols "crh_alt" {
+ include "tr(crh_alt)"
+
+ name[Group1]="Romania - Crimean Tatar (Turkish Alt-Q)";
+};
+
+partial
+xkb_symbols "crh_dobruca1" {
+ include "tr(crh)"
+
+ name[Group1]="Romania - Crimean Tatar (Dobruca-1 Q)";
+
+ key <AD05> { [ t, T, tcedilla, Tcedilla ] };
+ key <AD10> { [ p, P, abreve, Abreve ] };
+
+ key <AC04> { [ f, F, ibreve, Ibreve ] };
+ key <AC07> { [ iacute, Iacute, j, J ] };
+
+ key <AB07> { [ m, M, trademark, masculine ] };
+};
+
+partial
+xkb_symbols "crh_dobruca2" {
+ include "ro(crh_dobruca1)"
+
+ name[Group1]="Romania - Crimean Tatar (Dobruca-2 Q)";
+
+ key <AC04> { [ f, F, iacute, Iacute ] };
+ key <AC07> { [ ibreve, Ibreve, j, J ] };
+};
+
+// EXTRAS:
+
+partial alphanumeric_keys
+xkb_symbols "ergonomic" {
+ // This layout is optimized for fast touch-typing in Romanian on a
+ // US keyboard, and works by swapping out symbols infrequently used
+ // in written Romanian (q,w,y,k) in favor of native ones, thus reducing
+ // the need to use modifier keys.
+ // Created by Gabriel Somlo, <somlo@cmu.edu> (C) 2011
+
+ include "ro(basic)"
+
+ name[Group1]="Romania - Ergonomic Touchtype";
+
+ key <AD01> { [ abreve, Abreve, q, Q ] };
+ key <AD02> { [ 0x1000219, 0x1000218, w, W ] };
+ key <AD06> { [ 0x100021b, 0x100021a, y, Y ] };
+ key <AC01> { [ a, A, acircumflex, Acircumflex ] };
+ key <AC08> { [ icircumflex, Icircumflex, k, K ] };
+};
+
diff --git a/xorg-server/xkeyboard-config/symbols/rs b/xorg-server/xkeyboard-config/symbols/rs index d4628852f..1797542d0 100644 --- a/xorg-server/xkeyboard-config/symbols/rs +++ b/xorg-server/xkeyboard-config/symbols/rs @@ -1,345 +1,345 @@ -// Bosnian, Croatian, Serbian and Slovenian XKB keyboard mapping -// (derived from "Danube" D.2) -// -// Danube D.2 from 2003-05-12 is available at http://srpski.org/dunav/ -// -// Original authors: -// Danilo Segan (Данило Шеган) <danilo@kvota.net> -// Chusslove Illich (Часлав Илић) <chaslav@sezampro.yu> -// -// Danilo Segan <danilo@kvota.net>: -// - Modified for inclusion in XFree86 -// - Further modifications on 2005-08-18 to support Bosnian, Croatian -// and Slovenian in xkeyboard-config -// - -default partial alphanumeric_keys -xkb_symbols "basic" { - - name[Group1]= "Serbia"; - - include "rs(cyrlevel3)" - include "rs(common)" - include "rs(cyralpha)" - include "level3(ralt_switch)" -}; - - -partial alphanumeric_keys -xkb_symbols "latin" { - - name[Group1]= "Serbia - Latin"; - - include "latin(type3)" - include "rs(latalpha)" - include "rs(latlevel3)" - include "rs(common)" - include "level3(ralt_switch)" -}; - - -partial alphanumeric_keys -xkb_symbols "yz" { - // Cyrillic_zhe and Cyrillic_ze swapped. - - name[Group1]= "Serbia - Z and ZHE swapped"; - - include "rs(basic)" - - key <AD06> { [ Cyrillic_zhe, Cyrillic_ZHE, any,any ] }; // y - key <AB01> { [ Cyrillic_ze, Cyrillic_ZE, any,any ] }; // z -}; - -partial hidden alphanumeric_keys -xkb_symbols "common" { - // "Common" keys: keys which are same for both latin and cyrillic keyboards - - key.type[Group1] = "FOUR_LEVEL"; - - key <TLDE> { [ quoteleft, asciitilde, any,any ] }; // - key <AE01> { [ 1, exclam, any,any ] }; // - key <AE02> { [ 2, quotedbl, any,any ] }; // - key <AE03> { [ 3, numbersign, any,any ] }; // - key <AE04> { [ 4, dollar, any,any ] }; // - key <AE05> { [ 5, percent, any,any ] }; // - key <AE06> { [ 6, ampersand, any,any ] }; // - key <AE07> { [ 7, slash, any,any ] }; // - key <AE08> { [ 8, parenleft, any,any ] }; // - key <AE09> { [ 9, parenright, any,any ] }; // - key <AE10> { [ 0, equal, any,any ] }; // - key <AE11> { [ apostrophe, question, any,any ] }; // - key <AE12> { [ plus, asterisk, any,any ] }; // - - key <AB08> { [ comma, semicolon, any,any ] }; // - key <AB09> { [ period, colon, any,any ] }; // - key <AB10> { [ minus, underscore, any,any ] }; // - - include "kpdl(comma)" -}; - -partial hidden alphanumeric_keys -xkb_symbols "cyralpha" { - - key.type[Group1] = "FOUR_LEVEL_ALPHABETIC"; - - key <AD01> { [ Cyrillic_lje, Cyrillic_LJE, any,any ] }; // q - key <AD02> { [ Cyrillic_nje, Cyrillic_NJE, any,any ] }; // w - key <AD03> { [ Cyrillic_ie, Cyrillic_IE, any,any ] }; // e - key <AD04> { [ Cyrillic_er, Cyrillic_ER, any,any ] }; // r - key <AD05> { [ Cyrillic_te, Cyrillic_TE, any,any ] }; // t - key <AD06> { [ Cyrillic_ze, Cyrillic_ZE, any,any ] }; // y - key <AD07> { [ Cyrillic_u, Cyrillic_U, any,any ] }; // u - key <AD08> { [ Cyrillic_i, Cyrillic_I, any,any ] }; // i - key <AD09> { [ Cyrillic_o, Cyrillic_O, any,any ] }; // o - key <AD10> { [ Cyrillic_pe, Cyrillic_PE, any,any ] }; // p - key <AD11> { [ Cyrillic_sha, Cyrillic_SHA, any,any ] }; // [ { - key <AD12> { [ Serbian_dje, Serbian_DJE, any,any ] }; // ] } - - key <AC01> { [ Cyrillic_a, Cyrillic_A, any,any ] }; // a - key <AC02> { [ Cyrillic_es, Cyrillic_ES, any,any ] }; // s - key <AC03> { [ Cyrillic_de, Cyrillic_DE, any,any ] }; // d - key <AC04> { [ Cyrillic_ef, Cyrillic_EF, any,any ] }; // f - key <AC05> { [ Cyrillic_ghe, Cyrillic_GHE, any,any ] }; // g - key <AC06> { [ Cyrillic_ha, Cyrillic_HA, any,any ] }; // h - key <AC07> { [ Cyrillic_je, Cyrillic_JE, any,any ] }; // j - key <AC08> { [ Cyrillic_ka, Cyrillic_KA, any,any ] }; // k - key <AC09> { [ Cyrillic_el, Cyrillic_EL, any,any ] }; // l - key <AC10> { [ Cyrillic_che, Cyrillic_CHE, any,any ] }; // ; : - key <AC11> { [ Serbian_tshe, Serbian_TSHE, any,any ] }; // ' " - key <BKSL> { [ Cyrillic_zhe, Cyrillic_ZHE, any,any ] }; // \ | - - key <AB01> { [ Cyrillic_zhe, Cyrillic_ZHE, any,any ] }; // z - key <AB02> { [ Cyrillic_dzhe, Cyrillic_DZHE, any,any ] }; // x - key <AB03> { [ Cyrillic_tse, Cyrillic_TSE, any,any ] }; // c - key <AB04> { [ Cyrillic_ve, Cyrillic_VE, any,any ] }; // v - key <AB05> { [ Cyrillic_be, Cyrillic_BE, any,any ] }; // b - key <AB06> { [ Cyrillic_en, Cyrillic_EN, any,any ] }; // n - key <AB07> { [ Cyrillic_em, Cyrillic_EM, any,any ] }; // m -}; - - -partial hidden alphanumeric_keys -xkb_symbols "latalpha" { - - key.type[Group1] = "FOUR_LEVEL_ALPHABETIC"; - - key <AD11> { [ scaron, Scaron, any,any ] }; // - key <AD12> { [ dstroke, Dstroke, any,any ] }; // - - key <AC10> { [ ccaron, Ccaron, any,any ] }; // - key <AC11> { [ cacute, Cacute, any,any ] }; // - key <BKSL> { [ zcaron, Zcaron, any,any ] }; // - -}; - -partial hidden alphanumeric_keys -xkb_symbols "twoletter" { - // These are letters which are written in latin transcription with two-characters. - - key <AD01> { type[Group1] = "SEPARATE_CAPS_AND_SHIFT_ALPHABETIC", - [ U1C9, U1C8, any, U1C7 ] }; // q - key <AD02> { type[Group1] = "SEPARATE_CAPS_AND_SHIFT_ALPHABETIC", - [ U1CC, U1CB, any, U1CA ] }; // w - key <AB02> { type[Group1] = "SEPARATE_CAPS_AND_SHIFT_ALPHABETIC", - [ U1C6, U1C5, any, U1C4 ] }; // x - - // Also replace letter Y with Zcaron, since Y is of no use any longer - key <AB01> { [ zcaron, Zcaron, any,any ] }; // -}; - -partial hidden alphanumeric_keys -xkb_symbols "latlevel3" { - key <TLDE> { [ any,any, notsign, notsign ] }; // ` ~ - key <AE01> { [ any,any, dead_tilde, asciitilde ] }; // 1 ! - key <AE02> { [ any,any, dead_caron, caron ] }; // 2 @ - key <AE03> { [ any,any, dead_circumflex, asciicircum ] }; // 3 # - key <AE04> { [ any,any, dead_breve, breve ] }; // 4 $ - key <AE05> { [ any,any, dead_abovering, degree ] }; // 5 % - key <AE06> { [ any,any, dead_ogonek, ogonek ] }; // 6 ^ - key <AE07> { [ any,any, dead_grave, grave ] }; // 7 & - key <AE08> { [ any,any, dead_abovedot, abovedot ] }; // 8 * - key <AE09> { [ any,any, dead_acute, apostrophe ] }; // 9 ( - key <AE10> { [ any,any, dead_doubleacute, doubleacute ] }; // 0 ) - key <AE11> { [ any,any, dead_diaeresis, diaeresis ] }; // - _ - key <AE12> { [ any,any, dead_cedilla, cedilla ] }; // = + - - key <AD01> { [ any,any, backslash, Greek_OMEGA ] }; // q - key <AD02> { [ any,any, bar, Lstroke ] }; // w - key <AD03> { [ any,any, EuroSign, EuroSign ] }; // e - key <AD04> { [ any,any, paragraph, registered ] }; // r - key <AD05> { [ any,any, tslash, Tslash ] }; // t // ALPHABETIC - key <AD06> { [ any,any, leftarrow, yen ] }; // y - key <AD07> { [ any,any, downarrow, uparrow ] }; // u - key <AD08> { [ any,any, rightarrow, idotless ] }; // i - key <AD09> { [ any,any, oslash, Ooblique ] }; // o // ALPHABETIC - key <AD10> { [ any,any, thorn, THORN ] }; // p // ALPHABETIC - key <AD11> { [ any,any, division, dead_abovering ] }; // [ - key <AD12> { [ any,any, multiply, dead_macron ] }; // ] - - key <AC01> { [ any,any, ae, AE ] }; // a // ALPHABETIC - key <AC02> { [ any,any, doublelowquotemark, guillemotright ] }; // s - key <AC03> { [ any,any, leftdoublequotemark, guillemotleft ] }; // d - key <AC04> { [ any,any, bracketleft, ordfeminine ] }; // f - key <AC05> { [ any,any, bracketright, ENG ] }; // g - key <AC06> { [ any,any, hstroke, Hstroke ] }; // h // ALPHABETIC - key <AC07> { [ any,any, NoSymbol, NoSymbol ] }; // j - key <AC08> { [ any,any, lstroke, ampersand ] }; // k - key <AC09> { [ any,any, lstroke, Lstroke ] }; // l - key <AC10> { [ any,any, dead_acute, dead_doubleacute ] }; // ; - key <AC11> { [ any,any, ssharp, dead_caron ] }; // ' - key <BKSL> { [ any,any, currency, dead_breve ] }; // \ - - key <AB01> { [ any,any, leftsinglequotemark, guillemotright ] }; // z - key <AB02> { [ any,any, rightsinglequotemark,guillemotleft ] }; // x - key <AB03> { [ any,any, cent, copyright ] }; // c - key <AB04> { [ any,any, at, grave ] }; // v - key <AB05> { [ any,any, braceleft, apostrophe ] }; // b - key <AB06> { [ any,any, braceright, braceright ] }; // n - key <AB07> { [ any,any, asciicircum, masculine ] }; // m - key <AB08> { [ any,any, less, multiply ] }; // , < - key <AB09> { [ any,any, greater, division ] }; // . > - key <AB10> { [ any,any, emdash, endash ] }; // / ? - -}; - -partial hidden alphanumeric_keys -xkb_symbols "cyrlevel3" { - key <TLDE> { [ any,any, degree, notsign ] }; // ` ~ - key <AE03> { [ any,any, dead_circumflex, NoSymbol ] }; // 3 # - key <AE07> { [ any,any, dead_grave, NoSymbol ] }; // 7 & - key <AE08> { [ any,any, dead_doublegrave, NoSymbol ] }; // 8 * - key <AE09> { [ any,any, dead_acute, NoSymbol ] }; // 9 ( - key <AE10> { [ any,any, dead_invertedbreve, NoSymbol ] }; // 0 ) - key <AE11> { [ any,any, dead_macron, NoSymbol ] }; // - _ - - key <AD01> { [ any,any, backslash, NoSymbol ] }; // q - key <AD02> { [ any,any, bar, NoSymbol ] }; // w - key <AD03> { [ any,any, EuroSign, sterling ] }; // e - key <AD04> { [ any,any, paragraph, registered ] }; // r - key <AD05> { [ any,any, ellipsis, NoSymbol ] }; // t // ALPHABETIC - key <AD06> { [ any,any, leftarrow, yen ] }; // y - key <AD07> { [ any,any, downarrow, uparrow ] }; // u - key <AD08> { [ any,any, rightarrow, NoSymbol ] }; // i - key <AD09> { [ any,any, section, NoSymbol ] }; // o // ALPHABETIC - key <AD11> { [ any,any, division, NoSymbol ] }; // [ - key <AD12> { [ any,any, multiply, NoSymbol ] }; // ] - - key <AC02> { [ any,any, doublelowquotemark, guillemotright ] }; // s - key <AC03> { [ any,any, leftdoublequotemark, guillemotleft ] }; // d - key <AC04> { [ any,any, bracketleft, NoSymbol ] }; // f - key <AC05> { [ any,any, bracketright, NoSymbol ] }; // g - key <BKSL> { [ any,any, currency, NoSymbol ] }; // \ - - key <AB01> { [ any,any, leftsinglequotemark, NoSymbol ] }; // z - key <AB02> { [ any,any, rightsinglequotemark,NoSymbol ] }; // x - key <AB03> { [ any,any, cent, copyright ] }; // c - key <AB04> { [ any,any, at, NoSymbol ] }; // v - key <AB05> { [ any,any, braceleft, NoSymbol ] }; // b - key <AB06> { [ any,any, braceright, NoSymbol ] }; // n - key <AB07> { [ any,any, asciicircum, NoSymbol ] }; // m - key <AB08> { [ any,any, less, NoSymbol ] }; // , < - key <AB09> { [ any,any, greater, NoSymbol ] }; // . > - key <AB10> { [ any,any, emdash, endash ] }; // / ? -}; - -partial alphanumeric_keys -xkb_symbols "latinunicode" { - // This mapping supports the Unicode characters 0x1c4-0x1cc (dz, lj, and nj - // as single character). You get the title form with AltGr+Shift. - - name[Group1]= "Serbia - Latin Unicode"; - - include "rs(latin)" - include "rs(twoletter)" -}; - -partial alphanumeric_keys -xkb_symbols "latinyz" { - // For those who insist on using "english-position" Z and Y. - - name[Group1]= "Serbia - Latin qwerty"; - - include "rs(latin)" - - key <AD06> { [ y, Y, any,any ] }; // y - key <AB01> { [ z, Z, any,any ] }; // z -}; - -partial alphanumeric_keys -xkb_symbols "latinunicodeyz" { - // Unicode, ZHE and Z swapped. - - name[Group1]= "Serbia - Latin Unicode qwerty"; - - include "rs(latinunicode)" - - key <AD06> { [ zcaron, Zcaron, any,any ] }; // y - key <AB01> { [ z, Z, any,any ] }; // z -}; - -xkb_symbols "alternatequotes" { - // Another acceptable »pair of quotes« for Serbian - - name[Group1]= "Serbia - With guillemets"; - - include "rs(basic)" - - key <AC02> { [ any,any, guillemotright, NoSymbol ] }; // s - key <AC03> { [ any,any, guillemotleft, NoSymbol ] }; // d -}; - -xkb_symbols "latinalternatequotes" { - // Another acceptable »pair of quotes« for Serbian - - name[Group1]= "Serbia - Latin with guillemets"; - - include "rs(latin)" - - key <AC02> { [ any,any, guillemotright, NoSymbol ] }; // s - key <AC03> { [ any,any, guillemotleft, NoSymbol ] }; // d -}; - -xkb_symbols "rue" { - // Homophonic layout for Pannonian Rusyn (spoken mainly in Serbia and - // Croatia by the Rusyn people), based on Ukrainian homophonic. - // Author: Ljubomir J. Papuga (Любомир Я. Папуґа) <papuga.rs@gmail.com> - - name[Group1]= "Serbia - Pannonian Rusyn Homophonic"; - - include "ua(homophonic)" - - key <TLDE> { [ grave, asciitilde ] }; - key <AE03> { [ 3, doublelowquotemark ] }; - key <AE04> { [ 4, rightdoublequotemark ] }; - key <AE07> { [ 7, EuroSign ] }; - key <AE11> { [ 0x002D, emdash ] }; - key <AE12> { [ equal, plus ] }; - - key <AD02> { [ Ukrainian_ie, Ukrainian_IE ] }; - key <AD06> { [ Cyrillic_yu, Cyrillic_YU ] }; - key <AD08> { [ Cyrillic_i, Cyrillic_I ] }; - key <AD11> { [ Cyrillic_sha, Cyrillic_SHA ] }; - key <AD12> { [ Cyrillic_shcha, Cyrillic_SHCHA ] }; - - key <LSGT> { [ Ukrainian_yi, Ukrainian_YI ] }; - key <AB08> { [ comma, semicolon ] }; - key <AB09> { [ period, colon ] }; -}; - -// EXTRAS: - -xkb_symbols "combiningkeys" { - // Raw combining characters instead of dead keys, - // especially good for post-accenting texts. - - name[Group1]= "Serbia - Combining accents instead of dead keys"; - - include "rs(basic)" - - key <AE03> { [ any,any, U0302, dead_circumflex ] }; // 3, U0302 = COMBINING CIRCUMFLEX ACCENT - key <AE07> { [ any,any, U0300, NoSymbol ] }; // 7, U0300 = COMBINING GRAVE ACCENT - key <AE08> { [ any,any, U030F, NoSymbol ] }; // 8, U030F = COMBINING DOUBLE GRAVE ACCENT - key <AE09> { [ any,any, U0301, NoSymbol ] }; // 9, U0301 = COMBINING ACUTE ACCENT - key <AE10> { [ any,any, U0311, NoSymbol ] }; // 0, U0311 = COMBINING INVERTED BREVE - key <AE11> { [ any,any, U0304, NoSymbol ] }; // -, U0304 = COMBINING MACRON -}; +// Bosnian, Croatian, Serbian and Slovenian XKB keyboard mapping
+// (derived from "Danube" D.2)
+//
+// Danube D.2 from 2003-05-12 is available at http://srpski.org/dunav/
+//
+// Original authors:
+// Danilo Segan (Данило Шеган) <danilo@kvota.net>
+// Chusslove Illich (Часлав Илић) <chaslav@sezampro.yu>
+//
+// Danilo Segan <danilo@kvota.net>:
+// - Modified for inclusion in XFree86
+// - Further modifications on 2005-08-18 to support Bosnian, Croatian
+// and Slovenian in xkeyboard-config
+//
+
+default partial alphanumeric_keys
+xkb_symbols "basic" {
+
+ name[Group1]= "Serbia";
+
+ include "rs(cyrlevel3)"
+ include "rs(common)"
+ include "rs(cyralpha)"
+ include "level3(ralt_switch)"
+};
+
+
+partial alphanumeric_keys
+xkb_symbols "latin" {
+
+ name[Group1]= "Serbia - Latin";
+
+ include "latin(type3)"
+ include "rs(latalpha)"
+ include "rs(latlevel3)"
+ include "rs(common)"
+ include "level3(ralt_switch)"
+};
+
+
+partial alphanumeric_keys
+xkb_symbols "yz" {
+ // Cyrillic_zhe and Cyrillic_ze swapped.
+
+ name[Group1]= "Serbia - Z and ZHE swapped";
+
+ include "rs(basic)"
+
+ key <AD06> { [ Cyrillic_zhe, Cyrillic_ZHE, any,any ] }; // y
+ key <AB01> { [ Cyrillic_ze, Cyrillic_ZE, any,any ] }; // z
+};
+
+partial hidden alphanumeric_keys
+xkb_symbols "common" {
+ // "Common" keys: keys which are same for both latin and cyrillic keyboards
+
+ key.type[Group1] = "FOUR_LEVEL";
+
+ key <TLDE> { [ quoteleft, asciitilde, any,any ] }; //
+ key <AE01> { [ 1, exclam, any,any ] }; //
+ key <AE02> { [ 2, quotedbl, any,any ] }; //
+ key <AE03> { [ 3, numbersign, any,any ] }; //
+ key <AE04> { [ 4, dollar, any,any ] }; //
+ key <AE05> { [ 5, percent, any,any ] }; //
+ key <AE06> { [ 6, ampersand, any,any ] }; //
+ key <AE07> { [ 7, slash, any,any ] }; //
+ key <AE08> { [ 8, parenleft, any,any ] }; //
+ key <AE09> { [ 9, parenright, any,any ] }; //
+ key <AE10> { [ 0, equal, any,any ] }; //
+ key <AE11> { [ apostrophe, question, any,any ] }; //
+ key <AE12> { [ plus, asterisk, any,any ] }; //
+
+ key <AB08> { [ comma, semicolon, any,any ] }; //
+ key <AB09> { [ period, colon, any,any ] }; //
+ key <AB10> { [ minus, underscore, any,any ] }; //
+
+ include "kpdl(comma)"
+};
+
+partial hidden alphanumeric_keys
+xkb_symbols "cyralpha" {
+
+ key.type[Group1] = "FOUR_LEVEL_ALPHABETIC";
+
+ key <AD01> { [ Cyrillic_lje, Cyrillic_LJE, any,any ] }; // q
+ key <AD02> { [ Cyrillic_nje, Cyrillic_NJE, any,any ] }; // w
+ key <AD03> { [ Cyrillic_ie, Cyrillic_IE, any,any ] }; // e
+ key <AD04> { [ Cyrillic_er, Cyrillic_ER, any,any ] }; // r
+ key <AD05> { [ Cyrillic_te, Cyrillic_TE, any,any ] }; // t
+ key <AD06> { [ Cyrillic_ze, Cyrillic_ZE, any,any ] }; // y
+ key <AD07> { [ Cyrillic_u, Cyrillic_U, any,any ] }; // u
+ key <AD08> { [ Cyrillic_i, Cyrillic_I, any,any ] }; // i
+ key <AD09> { [ Cyrillic_o, Cyrillic_O, any,any ] }; // o
+ key <AD10> { [ Cyrillic_pe, Cyrillic_PE, any,any ] }; // p
+ key <AD11> { [ Cyrillic_sha, Cyrillic_SHA, any,any ] }; // [ {
+ key <AD12> { [ Serbian_dje, Serbian_DJE, any,any ] }; // ] }
+
+ key <AC01> { [ Cyrillic_a, Cyrillic_A, any,any ] }; // a
+ key <AC02> { [ Cyrillic_es, Cyrillic_ES, any,any ] }; // s
+ key <AC03> { [ Cyrillic_de, Cyrillic_DE, any,any ] }; // d
+ key <AC04> { [ Cyrillic_ef, Cyrillic_EF, any,any ] }; // f
+ key <AC05> { [ Cyrillic_ghe, Cyrillic_GHE, any,any ] }; // g
+ key <AC06> { [ Cyrillic_ha, Cyrillic_HA, any,any ] }; // h
+ key <AC07> { [ Cyrillic_je, Cyrillic_JE, any,any ] }; // j
+ key <AC08> { [ Cyrillic_ka, Cyrillic_KA, any,any ] }; // k
+ key <AC09> { [ Cyrillic_el, Cyrillic_EL, any,any ] }; // l
+ key <AC10> { [ Cyrillic_che, Cyrillic_CHE, any,any ] }; // ; :
+ key <AC11> { [ Serbian_tshe, Serbian_TSHE, any,any ] }; // ' "
+ key <BKSL> { [ Cyrillic_zhe, Cyrillic_ZHE, any,any ] }; // \ |
+
+ key <AB01> { [ Cyrillic_zhe, Cyrillic_ZHE, any,any ] }; // z
+ key <AB02> { [ Cyrillic_dzhe, Cyrillic_DZHE, any,any ] }; // x
+ key <AB03> { [ Cyrillic_tse, Cyrillic_TSE, any,any ] }; // c
+ key <AB04> { [ Cyrillic_ve, Cyrillic_VE, any,any ] }; // v
+ key <AB05> { [ Cyrillic_be, Cyrillic_BE, any,any ] }; // b
+ key <AB06> { [ Cyrillic_en, Cyrillic_EN, any,any ] }; // n
+ key <AB07> { [ Cyrillic_em, Cyrillic_EM, any,any ] }; // m
+};
+
+
+partial hidden alphanumeric_keys
+xkb_symbols "latalpha" {
+
+ key.type[Group1] = "FOUR_LEVEL_ALPHABETIC";
+
+ key <AD11> { [ scaron, Scaron, any,any ] }; //
+ key <AD12> { [ dstroke, Dstroke, any,any ] }; //
+
+ key <AC10> { [ ccaron, Ccaron, any,any ] }; //
+ key <AC11> { [ cacute, Cacute, any,any ] }; //
+ key <BKSL> { [ zcaron, Zcaron, any,any ] }; //
+
+};
+
+partial hidden alphanumeric_keys
+xkb_symbols "twoletter" {
+ // These are letters which are written in latin transcription with two-characters.
+
+ key <AD01> { type[Group1] = "SEPARATE_CAPS_AND_SHIFT_ALPHABETIC",
+ [ U1C9, U1C8, any, U1C7 ] }; // q
+ key <AD02> { type[Group1] = "SEPARATE_CAPS_AND_SHIFT_ALPHABETIC",
+ [ U1CC, U1CB, any, U1CA ] }; // w
+ key <AB02> { type[Group1] = "SEPARATE_CAPS_AND_SHIFT_ALPHABETIC",
+ [ U1C6, U1C5, any, U1C4 ] }; // x
+
+ // Also replace letter Y with Zcaron, since Y is of no use any longer
+ key <AB01> { [ zcaron, Zcaron, any,any ] }; //
+};
+
+partial hidden alphanumeric_keys
+xkb_symbols "latlevel3" {
+ key <TLDE> { [ any,any, notsign, notsign ] }; // ` ~
+ key <AE01> { [ any,any, dead_tilde, asciitilde ] }; // 1 !
+ key <AE02> { [ any,any, dead_caron, caron ] }; // 2 @
+ key <AE03> { [ any,any, dead_circumflex, asciicircum ] }; // 3 #
+ key <AE04> { [ any,any, dead_breve, breve ] }; // 4 $
+ key <AE05> { [ any,any, dead_abovering, degree ] }; // 5 %
+ key <AE06> { [ any,any, dead_ogonek, ogonek ] }; // 6 ^
+ key <AE07> { [ any,any, dead_grave, grave ] }; // 7 &
+ key <AE08> { [ any,any, dead_abovedot, abovedot ] }; // 8 *
+ key <AE09> { [ any,any, dead_acute, apostrophe ] }; // 9 (
+ key <AE10> { [ any,any, dead_doubleacute, doubleacute ] }; // 0 )
+ key <AE11> { [ any,any, dead_diaeresis, diaeresis ] }; // - _
+ key <AE12> { [ any,any, dead_cedilla, cedilla ] }; // = +
+
+ key <AD01> { [ any,any, backslash, Greek_OMEGA ] }; // q
+ key <AD02> { [ any,any, bar, Lstroke ] }; // w
+ key <AD03> { [ any,any, EuroSign, EuroSign ] }; // e
+ key <AD04> { [ any,any, paragraph, registered ] }; // r
+ key <AD05> { [ any,any, tslash, Tslash ] }; // t // ALPHABETIC
+ key <AD06> { [ any,any, leftarrow, yen ] }; // y
+ key <AD07> { [ any,any, downarrow, uparrow ] }; // u
+ key <AD08> { [ any,any, rightarrow, idotless ] }; // i
+ key <AD09> { [ any,any, oslash, Ooblique ] }; // o // ALPHABETIC
+ key <AD10> { [ any,any, thorn, THORN ] }; // p // ALPHABETIC
+ key <AD11> { [ any,any, division, dead_abovering ] }; // [
+ key <AD12> { [ any,any, multiply, dead_macron ] }; // ]
+
+ key <AC01> { [ any,any, ae, AE ] }; // a // ALPHABETIC
+ key <AC02> { [ any,any, doublelowquotemark, guillemotright ] }; // s
+ key <AC03> { [ any,any, leftdoublequotemark, guillemotleft ] }; // d
+ key <AC04> { [ any,any, bracketleft, ordfeminine ] }; // f
+ key <AC05> { [ any,any, bracketright, ENG ] }; // g
+ key <AC06> { [ any,any, hstroke, Hstroke ] }; // h // ALPHABETIC
+ key <AC07> { [ any,any, NoSymbol, NoSymbol ] }; // j
+ key <AC08> { [ any,any, lstroke, ampersand ] }; // k
+ key <AC09> { [ any,any, lstroke, Lstroke ] }; // l
+ key <AC10> { [ any,any, dead_acute, dead_doubleacute ] }; // ;
+ key <AC11> { [ any,any, ssharp, dead_caron ] }; // '
+ key <BKSL> { [ any,any, currency, dead_breve ] }; // \
+
+ key <AB01> { [ any,any, leftsinglequotemark, guillemotright ] }; // z
+ key <AB02> { [ any,any, rightsinglequotemark,guillemotleft ] }; // x
+ key <AB03> { [ any,any, cent, copyright ] }; // c
+ key <AB04> { [ any,any, at, grave ] }; // v
+ key <AB05> { [ any,any, braceleft, apostrophe ] }; // b
+ key <AB06> { [ any,any, braceright, braceright ] }; // n
+ key <AB07> { [ any,any, asciicircum, masculine ] }; // m
+ key <AB08> { [ any,any, less, multiply ] }; // , <
+ key <AB09> { [ any,any, greater, division ] }; // . >
+ key <AB10> { [ any,any, emdash, endash ] }; // / ?
+
+};
+
+partial hidden alphanumeric_keys
+xkb_symbols "cyrlevel3" {
+ key <TLDE> { [ any,any, degree, notsign ] }; // ` ~
+ key <AE03> { [ any,any, dead_circumflex, NoSymbol ] }; // 3 #
+ key <AE07> { [ any,any, dead_grave, NoSymbol ] }; // 7 &
+ key <AE08> { [ any,any, dead_doublegrave, NoSymbol ] }; // 8 *
+ key <AE09> { [ any,any, dead_acute, NoSymbol ] }; // 9 (
+ key <AE10> { [ any,any, dead_invertedbreve, NoSymbol ] }; // 0 )
+ key <AE11> { [ any,any, dead_macron, NoSymbol ] }; // - _
+
+ key <AD01> { [ any,any, backslash, NoSymbol ] }; // q
+ key <AD02> { [ any,any, bar, NoSymbol ] }; // w
+ key <AD03> { [ any,any, EuroSign, sterling ] }; // e
+ key <AD04> { [ any,any, paragraph, registered ] }; // r
+ key <AD05> { [ any,any, ellipsis, NoSymbol ] }; // t // ALPHABETIC
+ key <AD06> { [ any,any, leftarrow, yen ] }; // y
+ key <AD07> { [ any,any, downarrow, uparrow ] }; // u
+ key <AD08> { [ any,any, rightarrow, NoSymbol ] }; // i
+ key <AD09> { [ any,any, section, NoSymbol ] }; // o // ALPHABETIC
+ key <AD11> { [ any,any, division, NoSymbol ] }; // [
+ key <AD12> { [ any,any, multiply, NoSymbol ] }; // ]
+
+ key <AC02> { [ any,any, doublelowquotemark, guillemotright ] }; // s
+ key <AC03> { [ any,any, leftdoublequotemark, guillemotleft ] }; // d
+ key <AC04> { [ any,any, bracketleft, NoSymbol ] }; // f
+ key <AC05> { [ any,any, bracketright, NoSymbol ] }; // g
+ key <BKSL> { [ any,any, currency, NoSymbol ] }; // \
+
+ key <AB01> { [ any,any, leftsinglequotemark, NoSymbol ] }; // z
+ key <AB02> { [ any,any, rightsinglequotemark,NoSymbol ] }; // x
+ key <AB03> { [ any,any, cent, copyright ] }; // c
+ key <AB04> { [ any,any, at, NoSymbol ] }; // v
+ key <AB05> { [ any,any, braceleft, NoSymbol ] }; // b
+ key <AB06> { [ any,any, braceright, NoSymbol ] }; // n
+ key <AB07> { [ any,any, asciicircum, NoSymbol ] }; // m
+ key <AB08> { [ any,any, less, NoSymbol ] }; // , <
+ key <AB09> { [ any,any, greater, NoSymbol ] }; // . >
+ key <AB10> { [ any,any, emdash, endash ] }; // / ?
+};
+
+partial alphanumeric_keys
+xkb_symbols "latinunicode" {
+ // This mapping supports the Unicode characters 0x1c4-0x1cc (dz, lj, and nj
+ // as single character). You get the title form with AltGr+Shift.
+
+ name[Group1]= "Serbia - Latin Unicode";
+
+ include "rs(latin)"
+ include "rs(twoletter)"
+};
+
+partial alphanumeric_keys
+xkb_symbols "latinyz" {
+ // For those who insist on using "english-position" Z and Y.
+
+ name[Group1]= "Serbia - Latin qwerty";
+
+ include "rs(latin)"
+
+ key <AD06> { [ y, Y, any,any ] }; // y
+ key <AB01> { [ z, Z, any,any ] }; // z
+};
+
+partial alphanumeric_keys
+xkb_symbols "latinunicodeyz" {
+ // Unicode, ZHE and Z swapped.
+
+ name[Group1]= "Serbia - Latin Unicode qwerty";
+
+ include "rs(latinunicode)"
+
+ key <AD06> { [ zcaron, Zcaron, any,any ] }; // y
+ key <AB01> { [ z, Z, any,any ] }; // z
+};
+
+xkb_symbols "alternatequotes" {
+ // Another acceptable »pair of quotes« for Serbian
+
+ name[Group1]= "Serbia - With guillemets";
+
+ include "rs(basic)"
+
+ key <AC02> { [ any,any, guillemotright, NoSymbol ] }; // s
+ key <AC03> { [ any,any, guillemotleft, NoSymbol ] }; // d
+};
+
+xkb_symbols "latinalternatequotes" {
+ // Another acceptable »pair of quotes« for Serbian
+
+ name[Group1]= "Serbia - Latin with guillemets";
+
+ include "rs(latin)"
+
+ key <AC02> { [ any,any, guillemotright, NoSymbol ] }; // s
+ key <AC03> { [ any,any, guillemotleft, NoSymbol ] }; // d
+};
+
+xkb_symbols "rue" {
+ // Homophonic layout for Pannonian Rusyn (spoken mainly in Serbia and
+ // Croatia by the Rusyn people), based on Ukrainian homophonic.
+ // Author: Ljubomir J. Papuga (Любомир Я. Папуґа) <papuga.rs@gmail.com>
+
+ name[Group1]= "Serbia - Pannonian Rusyn Homophonic";
+
+ include "ua(homophonic)"
+
+ key <TLDE> { [ grave, asciitilde ] };
+ key <AE03> { [ 3, doublelowquotemark ] };
+ key <AE04> { [ 4, rightdoublequotemark ] };
+ key <AE07> { [ 7, EuroSign ] };
+ key <AE11> { [ 0x002D, emdash ] };
+ key <AE12> { [ equal, plus ] };
+
+ key <AD02> { [ Ukrainian_ie, Ukrainian_IE ] };
+ key <AD06> { [ Cyrillic_yu, Cyrillic_YU ] };
+ key <AD08> { [ Cyrillic_i, Cyrillic_I ] };
+ key <AD11> { [ Cyrillic_sha, Cyrillic_SHA ] };
+ key <AD12> { [ Cyrillic_shcha, Cyrillic_SHCHA ] };
+
+ key <LSGT> { [ Ukrainian_yi, Ukrainian_YI ] };
+ key <AB08> { [ comma, semicolon ] };
+ key <AB09> { [ period, colon ] };
+};
+
+// EXTRAS:
+
+xkb_symbols "combiningkeys" {
+ // Raw combining characters instead of dead keys,
+ // especially good for post-accenting texts.
+
+ name[Group1]= "Serbia - Combining accents instead of dead keys";
+
+ include "rs(basic)"
+
+ key <AE03> { [ any,any, U0302, dead_circumflex ] }; // 3, U0302 = COMBINING CIRCUMFLEX ACCENT
+ key <AE07> { [ any,any, U0300, NoSymbol ] }; // 7, U0300 = COMBINING GRAVE ACCENT
+ key <AE08> { [ any,any, U030F, NoSymbol ] }; // 8, U030F = COMBINING DOUBLE GRAVE ACCENT
+ key <AE09> { [ any,any, U0301, NoSymbol ] }; // 9, U0301 = COMBINING ACUTE ACCENT
+ key <AE10> { [ any,any, U0311, NoSymbol ] }; // 0, U0311 = COMBINING INVERTED BREVE
+ key <AE11> { [ any,any, U0304, NoSymbol ] }; // -, U0304 = COMBINING MACRON
+};
diff --git a/xorg-server/xkeyboard-config/symbols/ru b/xorg-server/xkeyboard-config/symbols/ru index 79323ca89..7d94b4768 100644 --- a/xorg-server/xkeyboard-config/symbols/ru +++ b/xorg-server/xkeyboard-config/symbols/ru @@ -1,588 +1,588 @@ -// based on -// russian standard keyboard -// AEN <aen@logic.ru> -// 2001/12/23 by Leon Kanter <leon@blackcatlinux.com> -// 2005/12/09 Valery Inozemtsev <shrek@altlinux.ru> - -// Windows layout -partial default alphanumeric_keys -xkb_symbols "winkeys" { - include "ru(common)" - - name[Group1]= "Russia"; - - key <AE03> { [ 3, numerosign ] }; - key <AE04> { [ 4, semicolon ] }; - key <AE05> { [ 5, percent ] }; - key <AE06> { [ 6, colon ] }; - key <AE07> { [ 7, question ] }; - key <AE08> { [ 8, asterisk ] }; - - key <AB10> { [ period, comma ] }; - key <BKSL> { [ backslash, slash ] }; -}; - -partial hidden alphanumeric_keys -xkb_symbols "common" { - - key <AE01> { [ 1, exclam ] }; - key <AE02> { [ 2, quotedbl ] }; - key <AE03> { [ 3, numbersign ] }; - key <AE04> { [ 4, asterisk ] }; - key <AE05> { [ 5, colon ] }; - key <AE06> { [ 6, comma ] }; - key <AE07> { [ 7, period ] }; - key <AE08> { [ 8, semicolon ] }; - key <AE09> { [ 9, parenleft ] }; - key <AE10> { [ 0, parenright ] }; - key <AE11> { [ minus, underscore ] }; - key <AE12> { [ equal, plus ] }; - key <BKSL> { [ backslash, bar ] }; - key <AB10> { [ slash, question ] }; - key <LSGT> { [ slash, bar ] }; - - key <TLDE> { [ Cyrillic_io, Cyrillic_IO ] }; - key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI ] }; - key <AD02> { [ Cyrillic_tse, Cyrillic_TSE ] }; - key <AD03> { [ Cyrillic_u, Cyrillic_U ] }; - key <AD04> { [ Cyrillic_ka, Cyrillic_KA ] }; - key <AD05> { [ Cyrillic_ie, Cyrillic_IE ] }; - key <AD06> { [ Cyrillic_en, Cyrillic_EN ] }; - key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE ] }; - key <AD08> { [ Cyrillic_sha, Cyrillic_SHA ] }; - key <AD09> { [ Cyrillic_shcha, Cyrillic_SHCHA ] }; - key <AD10> { [ Cyrillic_ze, Cyrillic_ZE ] }; - key <AD11> { [ Cyrillic_ha, Cyrillic_HA ] }; - key <AD12> { [Cyrillic_hardsign,Cyrillic_HARDSIGN ] }; - key <AC01> { [ Cyrillic_ef, Cyrillic_EF ] }; - key <AC02> { [ Cyrillic_yeru, Cyrillic_YERU ] }; - key <AC03> { [ Cyrillic_ve, Cyrillic_VE ] }; - key <AC04> { [ Cyrillic_a, Cyrillic_A ] }; - key <AC05> { [ Cyrillic_pe, Cyrillic_PE ] }; - key <AC06> { [ Cyrillic_er, Cyrillic_ER ] }; - key <AC07> { [ Cyrillic_o, Cyrillic_O ] }; - key <AC08> { [ Cyrillic_el, Cyrillic_EL ] }; - key <AC09> { [ Cyrillic_de, Cyrillic_DE ] }; - key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE ] }; - key <AC11> { [ Cyrillic_e, Cyrillic_E ] }; - key <AB01> { [ Cyrillic_ya, Cyrillic_YA ] }; - key <AB02> { [ Cyrillic_che, Cyrillic_CHE ] }; - key <AB03> { [ Cyrillic_es, Cyrillic_ES ] }; - key <AB04> { [ Cyrillic_em, Cyrillic_EM ] }; - key <AB05> { [ Cyrillic_i, Cyrillic_I ] }; - key <AB06> { [ Cyrillic_te, Cyrillic_TE ] }; - key <AB07> { [Cyrillic_softsign,Cyrillic_SOFTSIGN ] }; - key <AB08> { [ Cyrillic_be, Cyrillic_BE ] }; - key <AB09> { [ Cyrillic_yu, Cyrillic_YU ] }; - - key.type[group1]="TWO_LEVEL"; - - include "kpdl(comma)" -}; - -partial alphanumeric_keys -xkb_symbols "legacy" { - include "ru(common)" - - name[Group1]= "Russia - Legacy"; -}; - -partial alphanumeric_keys -xkb_symbols "olpc" { - - include "ru(common)" - - key <TLDE> { [ 0x01000451, 0x01000401, grave ] }; // Ñ‘, Ð - key <AE03> { [ 3, numbersign, 0x01002116 ] }; // â„– - key <AE04> { [ 4, dollar, semicolon ] }; - key <AE06> { [ 6, asciicircum, colon ] }; - key <AE07> { [ 7, ampersand ] }; - key <AE09> { [ 9, parenleft, acute ] }; - key <AC12> { [ backslash, bar, slash ] }; - - include "group(olpc)" -}; - -partial alphanumeric_keys -xkb_symbols "typewriter" { - include "ru(common)" - name[Group1]= "Russia - Typewriter"; - key <TLDE> { [ bar, plus ] }; - key <AE01> { [ numerosign, 1 ] }; - key <AE02> { [ minus, 2 ] }; - key <AE03> { [ slash, 3 ] }; - key <AE04> { [ quotedbl, 4 ] }; - key <AE05> { [ colon, 5 ] }; - key <AE06> { [ comma, 6 ] }; - key <AE07> { [ period, 7 ] }; - key <AE08> { [ underscore, 8 ] }; - key <AE09> { [ question, 9 ] }; - key <AE10> { [ percent, 0 ] }; - key <AE11> { [ exclam, equal ] }; - key <AE12> { [ semicolon, backslash ] }; - - key <BKSL> { [ parenright, parenleft ] }; - - key <AD12> { [Cyrillic_hardsign,Cyrillic_HARDSIGN ] }; - key <AB10> { [ Cyrillic_io, Cyrillic_IO ] }; -}; - -partial alphanumeric_keys -xkb_symbols "typewriter-legacy" { - include "ru(common)" - name[Group1]= "Russia - Typewriter, legacy"; - key <TLDE> { [ apostrophe, quotedbl ] }; - key <AE01> { [ exclam, 1 ] }; - key <AE02> { [ numerosign, 2 ] }; - key <AE03> { [ slash, 3 ] }; - key <AE04> { [ semicolon, 4 ] }; - key <AE05> { [ colon, 5 ] }; - key <AE06> { [ comma, 6 ] }; - key <AE07> { [ period, 7 ] }; - key <AE08> { [ underscore, 8 ] }; - key <AE09> { [ question, 9 ] }; - key <AE10> { [ percent, 0 ] }; - key <BKSL> { [ parenleft, parenright ] }; - - key <AD12> { [Cyrillic_hardsign,Cyrillic_HARDSIGN ] }; - key <AB10> { [ Cyrillic_io, Cyrillic_IO ] }; -}; - -partial alphanumeric_keys -xkb_symbols "phonetic" { - - name[Group1]= "Russia - Phonetic"; - - key <AE01> { [ 1, exclam ] }; - key <AE02> { [ 2, at ] }; - key <AE03> { [ 3, Cyrillic_io ] }; - key <AE04> { [ 4, Cyrillic_IO ] }; - key <AE05> { [ 5, Cyrillic_hardsign ] }; - key <AE06> { [ 6, Cyrillic_HARDSIGN ] }; - key <AE07> { [ 7, ampersand ] }; - key <AE08> { [ 8, asterisk ] }; - key <AE09> { [ 9, parenleft ] }; - key <AE10> { [ 0, parenright ] }; - key <AE11> { [ minus, underscore ] }; - - key <AB09> { [ period, greater ] }; - key <AB10> { [ slash, question ] }; - key <AB08> { [ comma, less ] }; - key <AC10> { [ semicolon, colon ] }; - key <AC11> { [ apostrophe, quotedbl ] }; - key <LSGT> { [ bar, brokenbar ] }; - - key <TLDE> { [ Cyrillic_yu, Cyrillic_YU ] }; - key <LatQ> { [ Cyrillic_ya, Cyrillic_YA ] }; - key <LatZ> { [ Cyrillic_ze, Cyrillic_ZE ] }; - key <LatS> { [ Cyrillic_es, Cyrillic_ES ] }; - key <LatA> { [ Cyrillic_a, Cyrillic_A ] }; - key <LatW> { [ Cyrillic_ve, Cyrillic_VE ] }; - key <LatC> { [ Cyrillic_tse, Cyrillic_TSE ] }; - key <LatX> { [Cyrillic_softsign,Cyrillic_SOFTSIGN ] }; - key <LatD> { [ Cyrillic_de, Cyrillic_DE ] }; - key <LatE> { [ Cyrillic_ie, Cyrillic_IE ] }; - key <LatV> { [ Cyrillic_zhe, Cyrillic_ZHE ] }; - key <LatF> { [ Cyrillic_ef, Cyrillic_EF ] }; - key <LatT> { [ Cyrillic_te, Cyrillic_TE ] }; - key <LatR> { [ Cyrillic_er, Cyrillic_ER ] }; - key <LatN> { [ Cyrillic_en, Cyrillic_EN ] }; - key <LatB> { [ Cyrillic_be, Cyrillic_BE ] }; - key <LatH> { [ Cyrillic_ha, Cyrillic_HA ] }; - key <LatG> { [ Cyrillic_ghe, Cyrillic_GHE ] }; - key <LatY> { [ Cyrillic_yeru, Cyrillic_YERU ] }; - key <LatM> { [ Cyrillic_em, Cyrillic_EM ] }; - key <LatJ> { [ Cyrillic_shorti, Cyrillic_SHORTI ] }; - key <LatU> { [ Cyrillic_u, Cyrillic_U ] }; - key <LatK> { [ Cyrillic_ka, Cyrillic_KA ] }; - key <LatI> { [ Cyrillic_i, Cyrillic_I ] }; - key <LatO> { [ Cyrillic_o, Cyrillic_O ] }; - key <LatL> { [ Cyrillic_el, Cyrillic_EL ] }; - key <LatP> { [ Cyrillic_pe, Cyrillic_PE ] }; - - key <AD11> { [ Cyrillic_sha, Cyrillic_SHA ] }; - key <AE12> { [ Cyrillic_che, Cyrillic_CHE ] }; - key <AD12> { [ Cyrillic_shcha, Cyrillic_SHCHA ] }; - key <BKSL> { [ Cyrillic_e, Cyrillic_E ] }; -}; - -partial alphanumeric_keys -xkb_symbols "phonetic_winkeys" { - - include "ru(phonetic)" - name[Group1]= "Russia - Phonetic Winkeys"; - - key <LatX> { [ Cyrillic_ha, Cyrillic_HA ] }; - key <LatH> { [ Cyrillic_che, Cyrillic_CHE ] }; - key <AE12> { [ Cyrillic_softsign, Cyrillic_softsign ] }; - -}; - -partial alphanumeric_keys -xkb_symbols "tt" { - include "ru(winkeys)" - name[Group1]= "Russia - Tatar"; - - key.type[group1]="FOUR_LEVEL"; - - key <TLDE> { [ 0x010004bb, 0x010004ba, - Cyrillic_io, Cyrillic_IO ] }; - key <AD02> { [ 0x010004e9, 0x010004e8, - Cyrillic_tse, Cyrillic_TSE ] }; - key <AD09> { [ 0x010004d9, 0x010004d8, - Cyrillic_shcha, Cyrillic_SHCHA ] }; - key <AD12> { [ 0x010004af, 0x010004ae, - Cyrillic_hardsign,Cyrillic_HARDSIGN ] }; - key <AC10> { [ 0x010004a3, 0x010004a2, - Cyrillic_zhe, Cyrillic_ZHE ] }; - key <AB07> { [ 0x01000497, 0x01000496, - Cyrillic_softsign,Cyrillic_SOFTSIGN ] }; - - include "level3(ralt_switch)" - -}; - -partial alphanumeric_keys -xkb_symbols "os_legacy" { - include "ru(common)" - - name[Group1]= "Russia - Ossetian, legacy"; - - key <TLDE> { [ Cyrillic_e, Cyrillic_E ] }; - key <AC07> { [ Cyrillic_o, Cyrillic_O, Cyrillic_io, Cyrillic_IO ] }; - key <AC11> { [ 0x010004D5, 0x010004D4 ] }; -}; - -partial alphanumeric_keys -xkb_symbols "os_winkeys" { - include "ru(winkeys)" - - name[Group1]= "Russia - Ossetian, Winkeys"; - - key <TLDE> { [ Cyrillic_e, Cyrillic_E ] }; - key <AC07> { [ Cyrillic_o, Cyrillic_O, Cyrillic_io, Cyrillic_IO ] }; - key <AC11> { [ 0x010004D5, 0x010004D4 ] }; -}; - -partial alphanumeric_keys -xkb_symbols "cv" { - include "ru(winkeys)" - - name[Group1]= "Russia - Chuvash"; - - key.type[group1]="FOUR_LEVEL"; - - key <AD03> { [ Cyrillic_u, Cyrillic_U, - 0x010004f3, 0x010004f2 ] }; - key <AD05> { [ Cyrillic_ie, Cyrillic_IE, - 0x01000115, 0x01000114 ] }; - key <AC04> { [ Cyrillic_a, Cyrillic_A, - abreve, Abreve ] }; - key <AB03> { [ Cyrillic_es, Cyrillic_ES, - ccedilla, Ccedilla ] }; - - include "level3(ralt_switch)" -}; - -partial alphanumeric_keys -xkb_symbols "udm" { - include "ru(winkeys)" - - name[Group1]= "Russia - Udmurt"; - - key.type[group1]="FOUR_LEVEL"; - - key <AE01> { [ question, exclam, 1, 1 ] }; - key <AE02> { [ parenleft, quotedbl, 2, 2 ] }; - key <AE03> { [ parenright, numerosign, 3, 3 ] }; - key <AE04> { [ colon, semicolon, 4, 4 ] }; - key <AE05> { [ asterisk, percent, 5, 5 ] }; - key <AE06> { [ 0x010004dd, 0x010004dc, 6, 6 ] }; - key <AE07> { [ 0x010004e7, 0x010004e6, 7, 7 ] }; - key <AE08> { [ 0x010004f5, 0x010004f4, 8, 8 ] }; - key <AE09> { [ 0x010004e5, 0x010004e4, 9, 9 ] }; - key <AE10> { [ 0x010004df, 0x010004de, 0, 0 ] }; - - include "level3(ralt_switch)" -}; - -partial alphanumeric_keys -xkb_symbols "cv_latin" { - include "us(alt-intl)" - - name[Group1]= "Russia - Chuvash Latin"; - - key.type[group1]="FOUR_LEVEL"; - - key <AD01> { [ q, Q, 0x01000161, 0x01000160 ] }; - key <AD02> { [ w, W, udiaeresis, Udiaeresis ] }; - key <AD03> { [ e, E, 0x01000115, 0x01000114 ] }; - key <AD07> { [ u, U, udiaeresis, Udiaeresis ] }; - key <AD08> { [ i, I, 0x0100012d, 0x0100012c ] }; - key <AD09> { [ o, O, odiaeresis, Odiaeresis ] }; - key <AC01> { [ a, A, abreve, Abreve ] }; - key <AC02> { [ s, S, scedilla, Scedilla ] }; - key <AC05> { [ g, G, gbreve, Gbreve ] }; - key <AC07> { [ j, J, 0x01000131, 0x01000130 ] }; - key <AB03> { [ c, C, ccedilla, Ccedilla ] }; - - include "level3(ralt_switch)" - -}; - -// Komi language layout -// based on -// russian standard keyboard -// Vlad Shakhov <lumpen.intellectual@gmail.com> -// Last Changes 2007/10/23 by Vlad Shakhov <lumpen.intellectual@gmail.com> - -partial alphanumeric_keys -xkb_symbols "kom" { - - include "ru(winkeys)" - - name[Group1]= "Russia - Komi"; - - key.type[group1]="FOUR_LEVEL_ALPHABETIC"; - -// cyrilllic o with diaeresis - key <AC07> { [ Cyrillic_o, Cyrillic_O, - U04E7, U04E6 ] }; - -// hard I as additional key for soft Cyrillic_I - key <AB05> { [ Cyrillic_i, Cyrillic_I, - Ukrainian_i, Ukrainian_I ] }; - - include "level3(ralt_switch)" -}; - -// Yakut language layout -// 2008/04/23 Yakov Aleksandrov <bertjickty@yandex.ru> -// 2008/04/23 Anatoliy Zhozhikov <jav@sitc.ru> -// 2008/04/23 Aleksandr Varlamov -partial alphanumeric_keys -xkb_symbols "sah" { - - include "ru(winkeys)" - - name[Group1]= "Russia - Yakut"; - - key.type[group1]="FOUR_LEVEL_ALPHABETIC"; - - key <TLDE> { [ Cyrillic_io, Cyrillic_IO, - U04EB, U04EA ] }; - key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI, - U048B, U048A ] }; - key <AD03> { [ Cyrillic_u, Cyrillic_U, - Cyrillic_u_straight, Cyrillic_U_straight ] }; - key <AD04> { [ Cyrillic_ka, Cyrillic_KA, - U04C4, U04C3 ] }; - key <AD06> { [ Cyrillic_en, Cyrillic_EN, - U04A5, U04A4 ] }; - key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE, - U0495, U0494 ] }; - key <AD10> { [ Cyrillic_ze, Cyrillic_ZE, - U04E1, U04E0 ] }; - key <AD11> { [ Cyrillic_ha, Cyrillic_HA, - Cyrillic_shha, Cyrillic_SHHA ] }; - key <AC07> { [ Cyrillic_o, Cyrillic_O, - Cyrillic_o_bar, Cyrillic_O_bar ] }; - key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE, - U0461, U0460 ] }; - key <AB02> { [ Cyrillic_che, Cyrillic_CHE, - Cyrillic_u_macron, Cyrillic_U_macron ] }; - key <AB04> { [ Cyrillic_em, Cyrillic_EM, - U04C8, U04C7 ] }; - key <AB05> { [ Cyrillic_i, Cyrillic_I, - Cyrillic_i_macron, Cyrillic_I_macron ] }; - - include "level3(ralt_switch)" -}; - - -//Kalmyk language layout -//based on the Kalmyk language layout: http://soft.oyrat.org/ -//Nikolay Korneev <halmg@oyrat.org> -//Toli Miron <mirontoli@gmail.com> - -partial alphanumeric_keys -xkb_symbols "xal" { - include "ru(winkeys)" - - name[Group1]= "Russia - Kalmyk"; - - key.type[group1]="FOUR_LEVEL"; - - key <AE01> { [ question, exclam, 1 ] }; - key <AE02> { [ numerosign, quotedbl, 2 ] }; - key <AE03> { [ Cyrillic_u_straight, Cyrillic_U_straight, 3 ] }; - key <AE04> { [ Cyrillic_schwa, Cyrillic_SCHWA, 4 ] }; - key <AE05> { [ asterisk, percent, 5 ] }; - key <AE06> { [ Cyrillic_en_descender, Cyrillic_EN_descender, 6 ] }; - key <AE07> { [ Cyrillic_o_bar, Cyrillic_O_bar, 7 ] }; - key <AE08> { [ Cyrillic_shha, Cyrillic_SHHA, 8 ] }; - key <AE09> { [ Cyrillic_zhe_descender, Cyrillic_ZHE_descender, 9 ] }; - key <AE10> { [ semicolon, colon, 0 ] }; - - key <TLDE> { [ parenleft, parenright, Cyrillic_io, Cyrillic_IO ] }; - - key <AD02> { [ Cyrillic_tse, Cyrillic_TSE, dollar ] }; - key <AD03> { [ Cyrillic_u, Cyrillic_U, EuroSign ] }; - key <AD04> { [ Cyrillic_ka, Cyrillic_KA, registered ] }; - key <AD05> { [ Cyrillic_ie, Cyrillic_IE, trademark ] }; - key <AD11> { [ Cyrillic_ha, Cyrillic_HA, bracketleft ] }; - key <AD12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, bracketright ] }; - key <AC11> { [ Cyrillic_e, Cyrillic_E, apostrophe ] }; - key <AB03> { [ Cyrillic_es, Cyrillic_ES, copyright ] }; - key <AB08> { [ Cyrillic_be, Cyrillic_BE, less ] }; - key <AB09> { [ Cyrillic_yu, Cyrillic_YU, greater ] }; - - include "level3(ralt_switch)" -}; - -partial alphanumeric_keys -xkb_symbols "dos" { - - include "ru(common)" - - name[Group1]= "Russia - DOS"; - - key <TLDE> { [ parenright, parenleft ] }; - key <AE04> { [ 4, currency ] }; - key <AE09> { [ 9, question ] }; - key <AE10> { [ 0, percent ] }; - - key <AB10> { [ Cyrillic_io, Cyrillic_IO ] }; -}; - -partial alphanumeric_keys -xkb_symbols "bak" { - include "ru(winkeys)" - - name[Group1]= "Russia - Bashkirian"; - key.type[group1]="FOUR_LEVEL"; - - key <TLDE> { [ 0x010004d9, 0x010004d8, Cyrillic_io, Cyrillic_IO ] }; - key <AE01> { [ exclam, quotedbl, 1, 1 ] }; - key <AE02> { [ 0x010004e9, 0x010004e8, 2, 2 ] }; - key <AE03> { [ 0x010004a1, 0x010004a0, 3, 3 ] }; - key <AE04> { [ 0x01000493, 0x01000492, 4, 4 ] }; - key <AE05> { [ 0x010004ab, 0x010004aa, 5, 5 ] }; - key <AE06> { [ colon, semicolon, 6, 6 ] }; - key <AE07> { [ 0x01000499, 0x01000498, 7, 7 ] }; - key <AE08> { [ 0x010004bb, 0x010004ba, 8, 8 ] }; - key <AE09> { [ question, parenleft, 9, 9 ] }; - key <AE10> { [ numerosign, parenright, 0, 0 ] }; - key <AE11> { [ minus, percent, minus, underscore ]}; - key <AE12> { [ 0x010004af, 0x010004ae, equal, plus ]}; - key <BKSL> { [ 0x010004a3, 0x010004a2, backslash, slash ]}; - - include "level3(ralt_switch)" -}; - -// Serbian charecters added as third level symbols to Russian keyboard layout. - -partial alphanumeric_keys -xkb_symbols "srp" { - include "ru(common)" - include "level3(ralt_switch)" - - name[Group1]= "Russia - Serbian"; - - key <AE03> { [ 3, numerosign ] }; - key <AE04> { [ 4, semicolon ] }; - key <AE05> { [ 5, percent ] }; - key <AE06> { [ 6, colon ] }; - key <AE07> { [ 7, question ] }; - key <AE08> { [ 8, asterisk ] }; - key <AB10> { [ period, comma ] }; - key <BKSL> { [ backslash, slash ] }; - key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI, U458, U408 ] }; - key <AD06> { [ Cyrillic_en, Cyrillic_EN, U45A, U40A ] }; - key <AC08> { [ Cyrillic_el, Cyrillic_EL, U459, U409 ] }; - key <AC09> { [ Cyrillic_de, Cyrillic_DE, U45F, U40F ] }; - key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE, U452, U402 ] }; - key <AB02> { [ Cyrillic_che, Cyrillic_CHE, U45B, U40B ] }; -}; - -// Mari language layout -// based on Russian standard keyboard -// http://www.marlamuter.ru/ -partial alphanumeric_keys -xkb_symbols "chm" { - include "ru(common)" - - name[Group1]= "Russia - Mari"; - - key.type[group1]="FOUR_LEVEL_ALPHABETIC"; - key <AC04> { [ Cyrillic_a, Cyrillic_A, U04D3, U04D2 ] }; - key <AD03> { [ Cyrillic_u, Cyrillic_U, U04F1, U04F0 ] }; - key <AC02> { [ Cyrillic_ui, Cyrillic_UI, U04F9, U04F8 ] }; - key <AD06> { [ Cyrillic_n, Cyrillic_N, U04A5, U04A4 ] }; - key <AC11> { [ Cyrillic_e, Cyrillic_E, U04E9, U04E8 ] }; - key <AC10> { [ Cyrillic_zh, Cyrillic_ZH, U04EB, U04EA ] }; - key <AC01> { [ Cyrillic_f, Cyrillic_F, UF537, UF536 ] }; - - include "level3(ralt_switch)" -}; - -// EXTRAS: - -// Church Slavonic language layout -// based on -// russian standard keyboard -// Aleksandr Andreev and Yuri Shardt -// Last Changes 2010/08/01. Contact <aleksandr.andreev@gmail.com> - -partial alphanumeric_keys -xkb_symbols "chu" -{ - name[Group1]= "Russia - Church Slavonic"; - key <TLDE> { [ U0457, U0407, U0482, U20DD ] }; // ї Ї ҂ e.g: а⃝ where the last is a combining ten thousands sign - key <AE01> { [ U0461, U0460, U047D, U047C] }; // ѡ Ѡ ѽ Ѽ - key <AE02> { [ U0454, U0404, U0465, U0464] }; // є Є ѥ Ѥ - key <AE03> { [ U046F, U046E, U0469, U0468] }; // ѯ Ѯ ѩ Ѩ - key <AE04> { [ U0471, U0470, U046D, U046C] }; // ѱ Ѱ ѭ Ѭ - key <AE05> { [ U0473, U0472, UA657, UA656] }; // ѳ Ѳ iotified A - key <AE06> { [ U0475, U0474, U0477, U0476] }; // ѵ Ѵ ѷ Ѷ - key <AE07> { [ U047B, U047A, UA64D, UA64C] }; // ѻ Ѻ ꙍ Ꙍ - key <AE08> { [ U047F, U047E, U046B, U046A] }; // ѿ Ѿ ѫ Ѫ - key <AE09> { [ U0455, U0405, parenleft, U002A ] }; // ѕ Ѕ ( * - key <AE10> { [ Cyrillic_u, Cyrillic_U, parenright, U0488 ] }; // у У ) NB: for diagraph Ouk, use Cyrillic_o + Cyrillic_u - key <AE11> { [ U0483, U0486, U0487, U005F] }; // а҃ а҆ а҇, _ (titlo, psili, pokrytie, underscore) - key <AE12> { [ U0301, U0300, U0484, UA67E] }; // а̀ а́ а҄ ꙾ (oxia, varia, kamora, kavyka) - key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI, U0456 ] }; - key <AD02> { [ Cyrillic_tse, Cyrillic_TSE, U2DF0 ] }; - key <AD03> { [ UA64B, UA64A, U2DF9 ] }; // Cyrillic monograph Uk (not U)! - key <AD04> { [ Cyrillic_ka, Cyrillic_KA, U2DE6 ] }; - key <AD05> { [ Cyrillic_ie, Cyrillic_IE, U2DF7 ] }; - key <AD06> { [ Cyrillic_en, Cyrillic_EN, U2DE9 ] }; - key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE, U2DE2 ] }; - key <AD08> { [ Cyrillic_sha, Cyrillic_SHA, U2DF2 ] }; - key <AD09> { [ Cyrillic_shcha, Cyrillic_SHCHA, U2DF3 ] }; - key <AD10> { [ Cyrillic_ze, Cyrillic_ZE, U2DE5 ] }; - key <AD11> { [ Cyrillic_ha, Cyrillic_HA, U2DEF ] }; - key <AD12> { [Cyrillic_hardsign,Cyrillic_HARDSIGN, UA67D ] }; // Payerok - key <BKSL> { [backslash, slash, colon, question] }; // \ / : ? (note, for Slavonic question use semicolon - key <AC01> { [ Cyrillic_ef, Cyrillic_EF ] }; - key <AC02> { [ Cyrillic_yeru, Cyrillic_YERU ] }; - key <AC03> { [ Cyrillic_ve, Cyrillic_VE, U2DE1 ] }; - key <AC04> { [ Cyrillic_a, Cyrillic_A, U2DF6 ] }; - key <AC05> { [ Cyrillic_pe, Cyrillic_PE, U2DEB ] }; - key <AC06> { [ Cyrillic_er, Cyrillic_ER, U2DEC ] }; - key <AC07> { [ Cyrillic_o, Cyrillic_O, U2DEA ] }; - key <AC08> { [ Cyrillic_el, Cyrillic_EL, U2DE7 ] }; - key <AC09> { [ Cyrillic_de, Cyrillic_DE, U2DE3 ] }; - key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE, U2DE4 ] }; - key <AC11> { [ U0463, U0462, U2DFA ] }; // Yat - key <AB01> { [ U0467, U0466, U2DFD ] }; // Small Yus - key <AB02> { [ Cyrillic_che, Cyrillic_CHE, U2DF1 ] }; - key <AB03> { [ Cyrillic_es, Cyrillic_ES, U2DED ] }; - key <AB04> { [ Cyrillic_em, Cyrillic_EM, U2DE8 ] }; - key <AB05> { [ Cyrillic_i, Cyrillic_I ] }; - key <AB06> { [ Cyrillic_te, Cyrillic_TE, U2DEE ] }; - key <AB07> { [Cyrillic_softsign,Cyrillic_SOFTSIGN ] }; - key <AB08> { [ Cyrillic_be, Cyrillic_BE, U2DE0 ] }; - key <AB09> { [ Cyrillic_yu, Cyrillic_YU, U2DFB ] }; - key <AB10> { [ period, comma, semicolon, exclam ] }; -}; +// based on
+// russian standard keyboard
+// AEN <aen@logic.ru>
+// 2001/12/23 by Leon Kanter <leon@blackcatlinux.com>
+// 2005/12/09 Valery Inozemtsev <shrek@altlinux.ru>
+
+// Windows layout
+partial default alphanumeric_keys
+xkb_symbols "winkeys" {
+ include "ru(common)"
+
+ name[Group1]= "Russia";
+
+ key <AE03> { [ 3, numerosign ] };
+ key <AE04> { [ 4, semicolon ] };
+ key <AE05> { [ 5, percent ] };
+ key <AE06> { [ 6, colon ] };
+ key <AE07> { [ 7, question ] };
+ key <AE08> { [ 8, asterisk ] };
+
+ key <AB10> { [ period, comma ] };
+ key <BKSL> { [ backslash, slash ] };
+};
+
+partial hidden alphanumeric_keys
+xkb_symbols "common" {
+
+ key <AE01> { [ 1, exclam ] };
+ key <AE02> { [ 2, quotedbl ] };
+ key <AE03> { [ 3, numbersign ] };
+ key <AE04> { [ 4, asterisk ] };
+ key <AE05> { [ 5, colon ] };
+ key <AE06> { [ 6, comma ] };
+ key <AE07> { [ 7, period ] };
+ key <AE08> { [ 8, semicolon ] };
+ key <AE09> { [ 9, parenleft ] };
+ key <AE10> { [ 0, parenright ] };
+ key <AE11> { [ minus, underscore ] };
+ key <AE12> { [ equal, plus ] };
+ key <BKSL> { [ backslash, bar ] };
+ key <AB10> { [ slash, question ] };
+ key <LSGT> { [ slash, bar ] };
+
+ key <TLDE> { [ Cyrillic_io, Cyrillic_IO ] };
+ key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI ] };
+ key <AD02> { [ Cyrillic_tse, Cyrillic_TSE ] };
+ key <AD03> { [ Cyrillic_u, Cyrillic_U ] };
+ key <AD04> { [ Cyrillic_ka, Cyrillic_KA ] };
+ key <AD05> { [ Cyrillic_ie, Cyrillic_IE ] };
+ key <AD06> { [ Cyrillic_en, Cyrillic_EN ] };
+ key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE ] };
+ key <AD08> { [ Cyrillic_sha, Cyrillic_SHA ] };
+ key <AD09> { [ Cyrillic_shcha, Cyrillic_SHCHA ] };
+ key <AD10> { [ Cyrillic_ze, Cyrillic_ZE ] };
+ key <AD11> { [ Cyrillic_ha, Cyrillic_HA ] };
+ key <AD12> { [Cyrillic_hardsign,Cyrillic_HARDSIGN ] };
+ key <AC01> { [ Cyrillic_ef, Cyrillic_EF ] };
+ key <AC02> { [ Cyrillic_yeru, Cyrillic_YERU ] };
+ key <AC03> { [ Cyrillic_ve, Cyrillic_VE ] };
+ key <AC04> { [ Cyrillic_a, Cyrillic_A ] };
+ key <AC05> { [ Cyrillic_pe, Cyrillic_PE ] };
+ key <AC06> { [ Cyrillic_er, Cyrillic_ER ] };
+ key <AC07> { [ Cyrillic_o, Cyrillic_O ] };
+ key <AC08> { [ Cyrillic_el, Cyrillic_EL ] };
+ key <AC09> { [ Cyrillic_de, Cyrillic_DE ] };
+ key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE ] };
+ key <AC11> { [ Cyrillic_e, Cyrillic_E ] };
+ key <AB01> { [ Cyrillic_ya, Cyrillic_YA ] };
+ key <AB02> { [ Cyrillic_che, Cyrillic_CHE ] };
+ key <AB03> { [ Cyrillic_es, Cyrillic_ES ] };
+ key <AB04> { [ Cyrillic_em, Cyrillic_EM ] };
+ key <AB05> { [ Cyrillic_i, Cyrillic_I ] };
+ key <AB06> { [ Cyrillic_te, Cyrillic_TE ] };
+ key <AB07> { [Cyrillic_softsign,Cyrillic_SOFTSIGN ] };
+ key <AB08> { [ Cyrillic_be, Cyrillic_BE ] };
+ key <AB09> { [ Cyrillic_yu, Cyrillic_YU ] };
+
+ key.type[group1]="TWO_LEVEL";
+
+ include "kpdl(comma)"
+};
+
+partial alphanumeric_keys
+xkb_symbols "legacy" {
+ include "ru(common)"
+
+ name[Group1]= "Russia - Legacy";
+};
+
+partial alphanumeric_keys
+xkb_symbols "olpc" {
+
+ include "ru(common)"
+
+ key <TLDE> { [ 0x01000451, 0x01000401, grave ] }; // Ñ‘, Ð
+ key <AE03> { [ 3, numbersign, 0x01002116 ] }; // â„–
+ key <AE04> { [ 4, dollar, semicolon ] };
+ key <AE06> { [ 6, asciicircum, colon ] };
+ key <AE07> { [ 7, ampersand ] };
+ key <AE09> { [ 9, parenleft, acute ] };
+ key <AC12> { [ backslash, bar, slash ] };
+
+ include "group(olpc)"
+};
+
+partial alphanumeric_keys
+xkb_symbols "typewriter" {
+ include "ru(common)"
+ name[Group1]= "Russia - Typewriter";
+ key <TLDE> { [ bar, plus ] };
+ key <AE01> { [ numerosign, 1 ] };
+ key <AE02> { [ minus, 2 ] };
+ key <AE03> { [ slash, 3 ] };
+ key <AE04> { [ quotedbl, 4 ] };
+ key <AE05> { [ colon, 5 ] };
+ key <AE06> { [ comma, 6 ] };
+ key <AE07> { [ period, 7 ] };
+ key <AE08> { [ underscore, 8 ] };
+ key <AE09> { [ question, 9 ] };
+ key <AE10> { [ percent, 0 ] };
+ key <AE11> { [ exclam, equal ] };
+ key <AE12> { [ semicolon, backslash ] };
+
+ key <BKSL> { [ parenright, parenleft ] };
+
+ key <AD12> { [Cyrillic_hardsign,Cyrillic_HARDSIGN ] };
+ key <AB10> { [ Cyrillic_io, Cyrillic_IO ] };
+};
+
+partial alphanumeric_keys
+xkb_symbols "typewriter-legacy" {
+ include "ru(common)"
+ name[Group1]= "Russia - Typewriter, legacy";
+ key <TLDE> { [ apostrophe, quotedbl ] };
+ key <AE01> { [ exclam, 1 ] };
+ key <AE02> { [ numerosign, 2 ] };
+ key <AE03> { [ slash, 3 ] };
+ key <AE04> { [ semicolon, 4 ] };
+ key <AE05> { [ colon, 5 ] };
+ key <AE06> { [ comma, 6 ] };
+ key <AE07> { [ period, 7 ] };
+ key <AE08> { [ underscore, 8 ] };
+ key <AE09> { [ question, 9 ] };
+ key <AE10> { [ percent, 0 ] };
+ key <BKSL> { [ parenleft, parenright ] };
+
+ key <AD12> { [Cyrillic_hardsign,Cyrillic_HARDSIGN ] };
+ key <AB10> { [ Cyrillic_io, Cyrillic_IO ] };
+};
+
+partial alphanumeric_keys
+xkb_symbols "phonetic" {
+
+ name[Group1]= "Russia - Phonetic";
+
+ key <AE01> { [ 1, exclam ] };
+ key <AE02> { [ 2, at ] };
+ key <AE03> { [ 3, Cyrillic_io ] };
+ key <AE04> { [ 4, Cyrillic_IO ] };
+ key <AE05> { [ 5, Cyrillic_hardsign ] };
+ key <AE06> { [ 6, Cyrillic_HARDSIGN ] };
+ key <AE07> { [ 7, ampersand ] };
+ key <AE08> { [ 8, asterisk ] };
+ key <AE09> { [ 9, parenleft ] };
+ key <AE10> { [ 0, parenright ] };
+ key <AE11> { [ minus, underscore ] };
+
+ key <AB09> { [ period, greater ] };
+ key <AB10> { [ slash, question ] };
+ key <AB08> { [ comma, less ] };
+ key <AC10> { [ semicolon, colon ] };
+ key <AC11> { [ apostrophe, quotedbl ] };
+ key <LSGT> { [ bar, brokenbar ] };
+
+ key <TLDE> { [ Cyrillic_yu, Cyrillic_YU ] };
+ key <LatQ> { [ Cyrillic_ya, Cyrillic_YA ] };
+ key <LatZ> { [ Cyrillic_ze, Cyrillic_ZE ] };
+ key <LatS> { [ Cyrillic_es, Cyrillic_ES ] };
+ key <LatA> { [ Cyrillic_a, Cyrillic_A ] };
+ key <LatW> { [ Cyrillic_ve, Cyrillic_VE ] };
+ key <LatC> { [ Cyrillic_tse, Cyrillic_TSE ] };
+ key <LatX> { [Cyrillic_softsign,Cyrillic_SOFTSIGN ] };
+ key <LatD> { [ Cyrillic_de, Cyrillic_DE ] };
+ key <LatE> { [ Cyrillic_ie, Cyrillic_IE ] };
+ key <LatV> { [ Cyrillic_zhe, Cyrillic_ZHE ] };
+ key <LatF> { [ Cyrillic_ef, Cyrillic_EF ] };
+ key <LatT> { [ Cyrillic_te, Cyrillic_TE ] };
+ key <LatR> { [ Cyrillic_er, Cyrillic_ER ] };
+ key <LatN> { [ Cyrillic_en, Cyrillic_EN ] };
+ key <LatB> { [ Cyrillic_be, Cyrillic_BE ] };
+ key <LatH> { [ Cyrillic_ha, Cyrillic_HA ] };
+ key <LatG> { [ Cyrillic_ghe, Cyrillic_GHE ] };
+ key <LatY> { [ Cyrillic_yeru, Cyrillic_YERU ] };
+ key <LatM> { [ Cyrillic_em, Cyrillic_EM ] };
+ key <LatJ> { [ Cyrillic_shorti, Cyrillic_SHORTI ] };
+ key <LatU> { [ Cyrillic_u, Cyrillic_U ] };
+ key <LatK> { [ Cyrillic_ka, Cyrillic_KA ] };
+ key <LatI> { [ Cyrillic_i, Cyrillic_I ] };
+ key <LatO> { [ Cyrillic_o, Cyrillic_O ] };
+ key <LatL> { [ Cyrillic_el, Cyrillic_EL ] };
+ key <LatP> { [ Cyrillic_pe, Cyrillic_PE ] };
+
+ key <AD11> { [ Cyrillic_sha, Cyrillic_SHA ] };
+ key <AE12> { [ Cyrillic_che, Cyrillic_CHE ] };
+ key <AD12> { [ Cyrillic_shcha, Cyrillic_SHCHA ] };
+ key <BKSL> { [ Cyrillic_e, Cyrillic_E ] };
+};
+
+partial alphanumeric_keys
+xkb_symbols "phonetic_winkeys" {
+
+ include "ru(phonetic)"
+ name[Group1]= "Russia - Phonetic Winkeys";
+
+ key <LatX> { [ Cyrillic_ha, Cyrillic_HA ] };
+ key <LatH> { [ Cyrillic_che, Cyrillic_CHE ] };
+ key <AE12> { [ Cyrillic_softsign, Cyrillic_softsign ] };
+
+};
+
+partial alphanumeric_keys
+xkb_symbols "tt" {
+ include "ru(winkeys)"
+ name[Group1]= "Russia - Tatar";
+
+ key.type[group1]="FOUR_LEVEL";
+
+ key <TLDE> { [ 0x010004bb, 0x010004ba,
+ Cyrillic_io, Cyrillic_IO ] };
+ key <AD02> { [ 0x010004e9, 0x010004e8,
+ Cyrillic_tse, Cyrillic_TSE ] };
+ key <AD09> { [ 0x010004d9, 0x010004d8,
+ Cyrillic_shcha, Cyrillic_SHCHA ] };
+ key <AD12> { [ 0x010004af, 0x010004ae,
+ Cyrillic_hardsign,Cyrillic_HARDSIGN ] };
+ key <AC10> { [ 0x010004a3, 0x010004a2,
+ Cyrillic_zhe, Cyrillic_ZHE ] };
+ key <AB07> { [ 0x01000497, 0x01000496,
+ Cyrillic_softsign,Cyrillic_SOFTSIGN ] };
+
+ include "level3(ralt_switch)"
+
+};
+
+partial alphanumeric_keys
+xkb_symbols "os_legacy" {
+ include "ru(common)"
+
+ name[Group1]= "Russia - Ossetian, legacy";
+
+ key <TLDE> { [ Cyrillic_e, Cyrillic_E ] };
+ key <AC07> { [ Cyrillic_o, Cyrillic_O, Cyrillic_io, Cyrillic_IO ] };
+ key <AC11> { [ 0x010004D5, 0x010004D4 ] };
+};
+
+partial alphanumeric_keys
+xkb_symbols "os_winkeys" {
+ include "ru(winkeys)"
+
+ name[Group1]= "Russia - Ossetian, Winkeys";
+
+ key <TLDE> { [ Cyrillic_e, Cyrillic_E ] };
+ key <AC07> { [ Cyrillic_o, Cyrillic_O, Cyrillic_io, Cyrillic_IO ] };
+ key <AC11> { [ 0x010004D5, 0x010004D4 ] };
+};
+
+partial alphanumeric_keys
+xkb_symbols "cv" {
+ include "ru(winkeys)"
+
+ name[Group1]= "Russia - Chuvash";
+
+ key.type[group1]="FOUR_LEVEL";
+
+ key <AD03> { [ Cyrillic_u, Cyrillic_U,
+ 0x010004f3, 0x010004f2 ] };
+ key <AD05> { [ Cyrillic_ie, Cyrillic_IE,
+ 0x01000115, 0x01000114 ] };
+ key <AC04> { [ Cyrillic_a, Cyrillic_A,
+ abreve, Abreve ] };
+ key <AB03> { [ Cyrillic_es, Cyrillic_ES,
+ ccedilla, Ccedilla ] };
+
+ include "level3(ralt_switch)"
+};
+
+partial alphanumeric_keys
+xkb_symbols "udm" {
+ include "ru(winkeys)"
+
+ name[Group1]= "Russia - Udmurt";
+
+ key.type[group1]="FOUR_LEVEL";
+
+ key <AE01> { [ question, exclam, 1, 1 ] };
+ key <AE02> { [ parenleft, quotedbl, 2, 2 ] };
+ key <AE03> { [ parenright, numerosign, 3, 3 ] };
+ key <AE04> { [ colon, semicolon, 4, 4 ] };
+ key <AE05> { [ asterisk, percent, 5, 5 ] };
+ key <AE06> { [ 0x010004dd, 0x010004dc, 6, 6 ] };
+ key <AE07> { [ 0x010004e7, 0x010004e6, 7, 7 ] };
+ key <AE08> { [ 0x010004f5, 0x010004f4, 8, 8 ] };
+ key <AE09> { [ 0x010004e5, 0x010004e4, 9, 9 ] };
+ key <AE10> { [ 0x010004df, 0x010004de, 0, 0 ] };
+
+ include "level3(ralt_switch)"
+};
+
+partial alphanumeric_keys
+xkb_symbols "cv_latin" {
+ include "us(alt-intl)"
+
+ name[Group1]= "Russia - Chuvash Latin";
+
+ key.type[group1]="FOUR_LEVEL";
+
+ key <AD01> { [ q, Q, 0x01000161, 0x01000160 ] };
+ key <AD02> { [ w, W, udiaeresis, Udiaeresis ] };
+ key <AD03> { [ e, E, 0x01000115, 0x01000114 ] };
+ key <AD07> { [ u, U, udiaeresis, Udiaeresis ] };
+ key <AD08> { [ i, I, 0x0100012d, 0x0100012c ] };
+ key <AD09> { [ o, O, odiaeresis, Odiaeresis ] };
+ key <AC01> { [ a, A, abreve, Abreve ] };
+ key <AC02> { [ s, S, scedilla, Scedilla ] };
+ key <AC05> { [ g, G, gbreve, Gbreve ] };
+ key <AC07> { [ j, J, 0x01000131, 0x01000130 ] };
+ key <AB03> { [ c, C, ccedilla, Ccedilla ] };
+
+ include "level3(ralt_switch)"
+
+};
+
+// Komi language layout
+// based on
+// russian standard keyboard
+// Vlad Shakhov <lumpen.intellectual@gmail.com>
+// Last Changes 2007/10/23 by Vlad Shakhov <lumpen.intellectual@gmail.com>
+
+partial alphanumeric_keys
+xkb_symbols "kom" {
+
+ include "ru(winkeys)"
+
+ name[Group1]= "Russia - Komi";
+
+ key.type[group1]="FOUR_LEVEL_ALPHABETIC";
+
+// cyrilllic o with diaeresis
+ key <AC07> { [ Cyrillic_o, Cyrillic_O,
+ U04E7, U04E6 ] };
+
+// hard I as additional key for soft Cyrillic_I
+ key <AB05> { [ Cyrillic_i, Cyrillic_I,
+ Ukrainian_i, Ukrainian_I ] };
+
+ include "level3(ralt_switch)"
+};
+
+// Yakut language layout
+// 2008/04/23 Yakov Aleksandrov <bertjickty@yandex.ru>
+// 2008/04/23 Anatoliy Zhozhikov <jav@sitc.ru>
+// 2008/04/23 Aleksandr Varlamov
+partial alphanumeric_keys
+xkb_symbols "sah" {
+
+ include "ru(winkeys)"
+
+ name[Group1]= "Russia - Yakut";
+
+ key.type[group1]="FOUR_LEVEL_ALPHABETIC";
+
+ key <TLDE> { [ Cyrillic_io, Cyrillic_IO,
+ U04EB, U04EA ] };
+ key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI,
+ U048B, U048A ] };
+ key <AD03> { [ Cyrillic_u, Cyrillic_U,
+ Cyrillic_u_straight, Cyrillic_U_straight ] };
+ key <AD04> { [ Cyrillic_ka, Cyrillic_KA,
+ U04C4, U04C3 ] };
+ key <AD06> { [ Cyrillic_en, Cyrillic_EN,
+ U04A5, U04A4 ] };
+ key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE,
+ U0495, U0494 ] };
+ key <AD10> { [ Cyrillic_ze, Cyrillic_ZE,
+ U04E1, U04E0 ] };
+ key <AD11> { [ Cyrillic_ha, Cyrillic_HA,
+ Cyrillic_shha, Cyrillic_SHHA ] };
+ key <AC07> { [ Cyrillic_o, Cyrillic_O,
+ Cyrillic_o_bar, Cyrillic_O_bar ] };
+ key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE,
+ U0461, U0460 ] };
+ key <AB02> { [ Cyrillic_che, Cyrillic_CHE,
+ Cyrillic_u_macron, Cyrillic_U_macron ] };
+ key <AB04> { [ Cyrillic_em, Cyrillic_EM,
+ U04C8, U04C7 ] };
+ key <AB05> { [ Cyrillic_i, Cyrillic_I,
+ Cyrillic_i_macron, Cyrillic_I_macron ] };
+
+ include "level3(ralt_switch)"
+};
+
+
+//Kalmyk language layout
+//based on the Kalmyk language layout: http://soft.oyrat.org/
+//Nikolay Korneev <halmg@oyrat.org>
+//Toli Miron <mirontoli@gmail.com>
+
+partial alphanumeric_keys
+xkb_symbols "xal" {
+ include "ru(winkeys)"
+
+ name[Group1]= "Russia - Kalmyk";
+
+ key.type[group1]="FOUR_LEVEL";
+
+ key <AE01> { [ question, exclam, 1 ] };
+ key <AE02> { [ numerosign, quotedbl, 2 ] };
+ key <AE03> { [ Cyrillic_u_straight, Cyrillic_U_straight, 3 ] };
+ key <AE04> { [ Cyrillic_schwa, Cyrillic_SCHWA, 4 ] };
+ key <AE05> { [ asterisk, percent, 5 ] };
+ key <AE06> { [ Cyrillic_en_descender, Cyrillic_EN_descender, 6 ] };
+ key <AE07> { [ Cyrillic_o_bar, Cyrillic_O_bar, 7 ] };
+ key <AE08> { [ Cyrillic_shha, Cyrillic_SHHA, 8 ] };
+ key <AE09> { [ Cyrillic_zhe_descender, Cyrillic_ZHE_descender, 9 ] };
+ key <AE10> { [ semicolon, colon, 0 ] };
+
+ key <TLDE> { [ parenleft, parenright, Cyrillic_io, Cyrillic_IO ] };
+
+ key <AD02> { [ Cyrillic_tse, Cyrillic_TSE, dollar ] };
+ key <AD03> { [ Cyrillic_u, Cyrillic_U, EuroSign ] };
+ key <AD04> { [ Cyrillic_ka, Cyrillic_KA, registered ] };
+ key <AD05> { [ Cyrillic_ie, Cyrillic_IE, trademark ] };
+ key <AD11> { [ Cyrillic_ha, Cyrillic_HA, bracketleft ] };
+ key <AD12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, bracketright ] };
+ key <AC11> { [ Cyrillic_e, Cyrillic_E, apostrophe ] };
+ key <AB03> { [ Cyrillic_es, Cyrillic_ES, copyright ] };
+ key <AB08> { [ Cyrillic_be, Cyrillic_BE, less ] };
+ key <AB09> { [ Cyrillic_yu, Cyrillic_YU, greater ] };
+
+ include "level3(ralt_switch)"
+};
+
+partial alphanumeric_keys
+xkb_symbols "dos" {
+
+ include "ru(common)"
+
+ name[Group1]= "Russia - DOS";
+
+ key <TLDE> { [ parenright, parenleft ] };
+ key <AE04> { [ 4, currency ] };
+ key <AE09> { [ 9, question ] };
+ key <AE10> { [ 0, percent ] };
+
+ key <AB10> { [ Cyrillic_io, Cyrillic_IO ] };
+};
+
+partial alphanumeric_keys
+xkb_symbols "bak" {
+ include "ru(winkeys)"
+
+ name[Group1]= "Russia - Bashkirian";
+ key.type[group1]="FOUR_LEVEL";
+
+ key <TLDE> { [ 0x010004d9, 0x010004d8, Cyrillic_io, Cyrillic_IO ] };
+ key <AE01> { [ exclam, quotedbl, 1, 1 ] };
+ key <AE02> { [ 0x010004e9, 0x010004e8, 2, 2 ] };
+ key <AE03> { [ 0x010004a1, 0x010004a0, 3, 3 ] };
+ key <AE04> { [ 0x01000493, 0x01000492, 4, 4 ] };
+ key <AE05> { [ 0x010004ab, 0x010004aa, 5, 5 ] };
+ key <AE06> { [ colon, semicolon, 6, 6 ] };
+ key <AE07> { [ 0x01000499, 0x01000498, 7, 7 ] };
+ key <AE08> { [ 0x010004bb, 0x010004ba, 8, 8 ] };
+ key <AE09> { [ question, parenleft, 9, 9 ] };
+ key <AE10> { [ numerosign, parenright, 0, 0 ] };
+ key <AE11> { [ minus, percent, minus, underscore ]};
+ key <AE12> { [ 0x010004af, 0x010004ae, equal, plus ]};
+ key <BKSL> { [ 0x010004a3, 0x010004a2, backslash, slash ]};
+
+ include "level3(ralt_switch)"
+};
+
+// Serbian charecters added as third level symbols to Russian keyboard layout.
+
+partial alphanumeric_keys
+xkb_symbols "srp" {
+ include "ru(common)"
+ include "level3(ralt_switch)"
+
+ name[Group1]= "Russia - Serbian";
+
+ key <AE03> { [ 3, numerosign ] };
+ key <AE04> { [ 4, semicolon ] };
+ key <AE05> { [ 5, percent ] };
+ key <AE06> { [ 6, colon ] };
+ key <AE07> { [ 7, question ] };
+ key <AE08> { [ 8, asterisk ] };
+ key <AB10> { [ period, comma ] };
+ key <BKSL> { [ backslash, slash ] };
+ key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI, U458, U408 ] };
+ key <AD06> { [ Cyrillic_en, Cyrillic_EN, U45A, U40A ] };
+ key <AC08> { [ Cyrillic_el, Cyrillic_EL, U459, U409 ] };
+ key <AC09> { [ Cyrillic_de, Cyrillic_DE, U45F, U40F ] };
+ key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE, U452, U402 ] };
+ key <AB02> { [ Cyrillic_che, Cyrillic_CHE, U45B, U40B ] };
+};
+
+// Mari language layout
+// based on Russian standard keyboard
+// http://www.marlamuter.ru/
+partial alphanumeric_keys
+xkb_symbols "chm" {
+ include "ru(common)"
+
+ name[Group1]= "Russia - Mari";
+
+ key.type[group1]="FOUR_LEVEL_ALPHABETIC";
+ key <AC04> { [ Cyrillic_a, Cyrillic_A, U04D3, U04D2 ] };
+ key <AD03> { [ Cyrillic_u, Cyrillic_U, U04F1, U04F0 ] };
+ key <AC02> { [ Cyrillic_ui, Cyrillic_UI, U04F9, U04F8 ] };
+ key <AD06> { [ Cyrillic_n, Cyrillic_N, U04A5, U04A4 ] };
+ key <AC11> { [ Cyrillic_e, Cyrillic_E, U04E9, U04E8 ] };
+ key <AC10> { [ Cyrillic_zh, Cyrillic_ZH, U04EB, U04EA ] };
+ key <AC01> { [ Cyrillic_f, Cyrillic_F, UF537, UF536 ] };
+
+ include "level3(ralt_switch)"
+};
+
+// EXTRAS:
+
+// Church Slavonic language layout
+// based on
+// russian standard keyboard
+// Aleksandr Andreev and Yuri Shardt
+// Last Changes 2010/08/01. Contact <aleksandr.andreev@gmail.com>
+
+partial alphanumeric_keys
+xkb_symbols "chu"
+{
+ name[Group1]= "Russia - Church Slavonic";
+ key <TLDE> { [ U0457, U0407, U0482, U20DD ] }; // ї Ї ҂ e.g: а⃝ where the last is a combining ten thousands sign
+ key <AE01> { [ U0461, U0460, U047D, U047C] }; // ѡ Ѡ ѽ Ѽ
+ key <AE02> { [ U0454, U0404, U0465, U0464] }; // є Є ѥ Ѥ
+ key <AE03> { [ U046F, U046E, U0469, U0468] }; // ѯ Ѯ ѩ Ѩ
+ key <AE04> { [ U0471, U0470, U046D, U046C] }; // ѱ Ѱ ѭ Ѭ
+ key <AE05> { [ U0473, U0472, UA657, UA656] }; // ѳ Ѳ iotified A
+ key <AE06> { [ U0475, U0474, U0477, U0476] }; // ѵ Ѵ ѷ Ѷ
+ key <AE07> { [ U047B, U047A, UA64D, UA64C] }; // ѻ Ѻ ꙍ Ꙍ
+ key <AE08> { [ U047F, U047E, U046B, U046A] }; // ѿ Ѿ ѫ Ѫ
+ key <AE09> { [ U0455, U0405, parenleft, U002A ] }; // ѕ Ѕ ( *
+ key <AE10> { [ Cyrillic_u, Cyrillic_U, parenright, U0488 ] }; // у У ) NB: for diagraph Ouk, use Cyrillic_o + Cyrillic_u
+ key <AE11> { [ U0483, U0486, U0487, U005F] }; // а҃ а҆ а҇, _ (titlo, psili, pokrytie, underscore)
+ key <AE12> { [ U0301, U0300, U0484, UA67E] }; // а̀ а́ а҄ ꙾ (oxia, varia, kamora, kavyka)
+ key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI, U0456 ] };
+ key <AD02> { [ Cyrillic_tse, Cyrillic_TSE, U2DF0 ] };
+ key <AD03> { [ UA64B, UA64A, U2DF9 ] }; // Cyrillic monograph Uk (not U)!
+ key <AD04> { [ Cyrillic_ka, Cyrillic_KA, U2DE6 ] };
+ key <AD05> { [ Cyrillic_ie, Cyrillic_IE, U2DF7 ] };
+ key <AD06> { [ Cyrillic_en, Cyrillic_EN, U2DE9 ] };
+ key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE, U2DE2 ] };
+ key <AD08> { [ Cyrillic_sha, Cyrillic_SHA, U2DF2 ] };
+ key <AD09> { [ Cyrillic_shcha, Cyrillic_SHCHA, U2DF3 ] };
+ key <AD10> { [ Cyrillic_ze, Cyrillic_ZE, U2DE5 ] };
+ key <AD11> { [ Cyrillic_ha, Cyrillic_HA, U2DEF ] };
+ key <AD12> { [Cyrillic_hardsign,Cyrillic_HARDSIGN, UA67D ] }; // Payerok
+ key <BKSL> { [backslash, slash, colon, question] }; // \ / : ? (note, for Slavonic question use semicolon
+ key <AC01> { [ Cyrillic_ef, Cyrillic_EF ] };
+ key <AC02> { [ Cyrillic_yeru, Cyrillic_YERU ] };
+ key <AC03> { [ Cyrillic_ve, Cyrillic_VE, U2DE1 ] };
+ key <AC04> { [ Cyrillic_a, Cyrillic_A, U2DF6 ] };
+ key <AC05> { [ Cyrillic_pe, Cyrillic_PE, U2DEB ] };
+ key <AC06> { [ Cyrillic_er, Cyrillic_ER, U2DEC ] };
+ key <AC07> { [ Cyrillic_o, Cyrillic_O, U2DEA ] };
+ key <AC08> { [ Cyrillic_el, Cyrillic_EL, U2DE7 ] };
+ key <AC09> { [ Cyrillic_de, Cyrillic_DE, U2DE3 ] };
+ key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE, U2DE4 ] };
+ key <AC11> { [ U0463, U0462, U2DFA ] }; // Yat
+ key <AB01> { [ U0467, U0466, U2DFD ] }; // Small Yus
+ key <AB02> { [ Cyrillic_che, Cyrillic_CHE, U2DF1 ] };
+ key <AB03> { [ Cyrillic_es, Cyrillic_ES, U2DED ] };
+ key <AB04> { [ Cyrillic_em, Cyrillic_EM, U2DE8 ] };
+ key <AB05> { [ Cyrillic_i, Cyrillic_I ] };
+ key <AB06> { [ Cyrillic_te, Cyrillic_TE, U2DEE ] };
+ key <AB07> { [Cyrillic_softsign,Cyrillic_SOFTSIGN ] };
+ key <AB08> { [ Cyrillic_be, Cyrillic_BE, U2DE0 ] };
+ key <AB09> { [ Cyrillic_yu, Cyrillic_YU, U2DFB ] };
+ key <AB10> { [ period, comma, semicolon, exclam ] };
+};
diff --git a/xorg-server/xkeyboard-config/symbols/sgi_vndr/makefile b/xorg-server/xkeyboard-config/symbols/sgi_vndr/makefile new file mode 100644 index 000000000..79a27fead --- /dev/null +++ b/xorg-server/xkeyboard-config/symbols/sgi_vndr/makefile @@ -0,0 +1,12 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\symbols\sgi_vndr + +dist_symbols_DATA = \ +jp + +DATA_FILES=$(dist_symbols_DATA:%=$(DESTDIR)\%) + +include ..\..\xkbrules.mak diff --git a/xorg-server/xkeyboard-config/symbols/sony_vndr/makefile b/xorg-server/xkeyboard-config/symbols/sony_vndr/makefile new file mode 100644 index 000000000..c2c1fa757 --- /dev/null +++ b/xorg-server/xkeyboard-config/symbols/sony_vndr/makefile @@ -0,0 +1,12 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\symbols\sony_vndr + +dist_symbols_DATA = \ +us + +DATA_FILES=$(dist_symbols_DATA:%=$(DESTDIR)\%) + +include ..\..\xkbrules.mak diff --git a/xorg-server/xkeyboard-config/symbols/sun_vndr/makefile b/xorg-server/xkeyboard-config/symbols/sun_vndr/makefile new file mode 100644 index 000000000..62b2f44a0 --- /dev/null +++ b/xorg-server/xkeyboard-config/symbols/sun_vndr/makefile @@ -0,0 +1,18 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\symbols\sun_vndr + +dist_symbols_DATA = \ + ara be br ca ch \ + cz de dk ee es \ + fi fr gb gr it \ + jp kr lt lv nl \ + no pl pt ro ru \ + se sk solaris tr tuv \ + tw ua us + +DATA_FILES=$(dist_symbols_DATA:%=$(DESTDIR)\%) + +include ..\..\xkbrules.mak diff --git a/xorg-server/xkeyboard-config/symbols/us b/xorg-server/xkeyboard-config/symbols/us index 871dfbdc6..5258b96ce 100644 --- a/xorg-server/xkeyboard-config/symbols/us +++ b/xorg-server/xkeyboard-config/symbols/us @@ -1,1337 +1,1337 @@ -default -partial alphanumeric_keys modifier_keys -xkb_symbols "basic" { - - name[Group1]= "USA"; - - // Alphanumeric section - key <TLDE> { [ grave, asciitilde ] }; - key <AE01> { [ 1, exclam ] }; - key <AE02> { [ 2, at ] }; - key <AE03> { [ 3, numbersign ] }; - key <AE04> { [ 4, dollar ] }; - key <AE05> { [ 5, percent ] }; - key <AE06> { [ 6, asciicircum ] }; - key <AE07> { [ 7, ampersand ] }; - key <AE08> { [ 8, asterisk ] }; - key <AE09> { [ 9, parenleft ] }; - key <AE10> { [ 0, parenright ] }; - key <AE11> { [ minus, underscore ] }; - key <AE12> { [ equal, plus ] }; - - key <AD01> { [ q, Q ] }; - key <AD02> { [ w, W ] }; - key <AD03> { [ e, E ] }; - key <AD04> { [ r, R ] }; - key <AD05> { [ t, T ] }; - key <AD06> { [ y, Y ] }; - key <AD07> { [ u, U ] }; - key <AD08> { [ i, I ] }; - key <AD09> { [ o, O ] }; - key <AD10> { [ p, P ] }; - key <AD11> { [ bracketleft, braceleft ] }; - key <AD12> { [ bracketright, braceright ] }; - - key <AC01> { [ a, A ] }; - key <AC02> { [ s, S ] }; - key <AC03> { [ d, D ] }; - key <AC04> { [ f, F ] }; - key <AC05> { [ g, G ] }; - key <AC06> { [ h, H ] }; - key <AC07> { [ j, J ] }; - key <AC08> { [ k, K ] }; - key <AC09> { [ l, L ] }; - key <AC10> { [ semicolon, colon ] }; - key <AC11> { [ apostrophe, quotedbl ] }; - - key <AB01> { [ z, Z ] }; - key <AB02> { [ x, X ] }; - key <AB03> { [ c, C ] }; - key <AB04> { [ v, V ] }; - key <AB05> { [ b, B ] }; - key <AB06> { [ n, N ] }; - key <AB07> { [ m, M ] }; - key <AB08> { [ comma, less ] }; - key <AB09> { [ period, greater ] }; - key <AB10> { [ slash, question ] }; - - key <BKSL> { [ backslash, bar ] }; - // End alphanumeric section -}; - -partial alphanumeric_keys -xkb_symbols "euro" { - - name[Group1]= "USA - With EuroSign on 5"; - - include "us(basic)" - - include "eurosign(5)" - - include "level3(ralt_switch)" -}; - - -partial alphanumeric_keys -xkb_symbols "intl" { - - name[Group1]= "USA - International (with dead keys)"; - - include "us(basic)" - - // Alphanumeric section - key <TLDE> { [dead_grave, dead_tilde, grave, asciitilde ] }; - key <AE01> { [ 1, exclam, exclamdown, onesuperior ] }; - key <AE02> { [ 2, at, twosuperior, dead_doubleacute ] }; - key <AE03> { [ 3, numbersign, threesuperior, dead_macron ] }; - key <AE04> { [ 4, dollar, currency, sterling ] }; - key <AE05> { [ 5, percent, EuroSign, dead_cedilla ] }; - key <AE06> { [ 6, dead_circumflex, onequarter, asciicircum ] }; - key <AE07> { [ 7, ampersand, onehalf, dead_horn ] }; - key <AE08> { [ 8, asterisk, threequarters, dead_ogonek ] }; - key <AE09> { [ 9, parenleft, leftsinglequotemark, dead_breve ] }; - key <AE10> { [ 0, parenright, rightsinglequotemark, dead_abovering ] }; - key <AE11> { [ minus, underscore, yen, dead_belowdot ] }; - key <AE12> { [ equal, plus, multiply, division ] }; - - key <AD01> { [ q, Q, adiaeresis, Adiaeresis ] }; - key <AD02> { [ w, W, aring, Aring ] }; - key <AD03> { [ e, E, eacute, Eacute ] }; - key <AD04> { [ r, R, registered, registered ] }; - key <AD05> { [ t, T, thorn, THORN ] }; - key <AD06> { [ y, Y, udiaeresis, Udiaeresis ] }; - key <AD07> { [ u, U, uacute, Uacute ] }; - key <AD08> { [ i, I, iacute, Iacute ] }; - key <AD09> { [ o, O, oacute, Oacute ] }; - key <AD10> { [ p, P, odiaeresis, Odiaeresis ] }; - key <AD11> { [ bracketleft, braceleft, guillemotleft, leftdoublequotemark ] }; - key <AD12> { [bracketright, braceright, guillemotright, rightdoublequotemark ] }; - - key <AC01> { [ a, A, aacute, Aacute ] }; - key <AC02> { [ s, S, ssharp, section ] }; - key <AC03> { [ d, D, eth, ETH ] }; - key <AC04> { [ f, F, f, F ] }; - key <AC05> { [ g, G, g, G ] }; - key <AC06> { [ h, H, h, H ] }; - key <AC07> { [ j, J, j, J ] }; - key <AC08> { [ k, K, oe, OE ] }; - - key <AC09> { [ l, L, oslash, Ooblique ] }; - key <AC10> { [ semicolon, colon, paragraph, degree ] }; - key <AC11> { [dead_acute, dead_diaeresis, apostrophe, quotedbl ] }; - - key <AB01> { [ z, Z, ae, AE ] }; - key <AB02> { [ x, X, x, X ] }; - key <AB03> { [ c, C, copyright, cent ] }; - key <AB04> { [ v, V, v, V ] }; - key <AB05> { [ b, B, b, B ] }; - key <AB06> { [ n, N, ntilde, Ntilde ] }; - key <AB07> { [ m, M, mu, mu ] }; - key <AB08> { [ comma, less, ccedilla, Ccedilla ] }; - key <AB09> { [ period, greater, dead_abovedot, dead_caron ] }; - key <AB10> { [ slash, question, questiondown, dead_hook ] }; - key <BKSL> { [ backslash, bar, notsign, brokenbar ] }; - - include "level3(ralt_switch)" -}; - -// Based on symbols/us_intl keyboard map: -// Dead-keys definition for a very simple US/ASCII layout. -// by Conectiva (http://www.conectiva.com.br) -// modified by Ricardo Y. Igarashi (iga@that.com.br) - -// Added the following deadkeys, to make it truly international: -// -// dead_macron: on AltGr-minus -// dead_breve: on AltGr-parenleft -// dead_abovedot: on AltGr-period -// dead_abovering: on AltGr-0 -// dead_doubleacute: on AltGr-equal (as quotedbl is already used) -// dead_caron: on AltGr-less (AltGr-shift-comma) -// dead_cedilla: on AltGr-comma -// dead_ogonek: on AltGr-semicolon -// dead_belowdot: on AltGr-underscore (AltGr-shift-minus) -// dead_hook: on AltGr-question -// dead_horn: on AltGr-plus (AltGr-shift-equal) -// dead_diaeresis: on AltGr-colon (Alt-shift-semicolon) -// -// those were already there: -// dead_grave -// dead_acute -// dead_circumflex -// dead_tilde -// dead_diaeresis - -partial alphanumeric_keys -xkb_symbols "alt-intl" { - - name[Group1]= "USA - Alternative international"; - - include "us" - - key <TLDE> { [ dead_grave, dead_tilde, grave, asciitilde ] }; - key <AE05> { [ 5, percent, EuroSign ] }; - key <AE06> { [ 6, dead_circumflex, asciicircum, asciicircum ] }; - key <AE09> { [ 9, parenleft, leftsinglequotemark, dead_breve ] }; - key <AE10> { [ 0, parenright, rightsinglequotemark, dead_abovering ] }; - key <AE11> { [ minus, underscore, dead_macron, dead_belowdot ] }; - key <AE12> { [ equal, plus, dead_doubleacute, dead_horn ] }; - - key <AD03> { [ e, E, EuroSign, cent ] }; - - key <AC10> { [ semicolon, colon, dead_ogonek, dead_diaeresis ] }; - key <AC11> { [ dead_acute, dead_diaeresis, apostrophe, quotedbl ] }; - - key <AB08> { [ comma, less, dead_cedilla, dead_caron ] }; - key <AB09> { [ period, greater, dead_abovedot, dead_circumflex ] }; - key <AB10> { [ slash, question, dead_hook, dead_hook ] }; - - include "level3(ralt_switch)" -}; - -// based on a keyboard map from an 'xkb/symbols/dk' file - -partial alphanumeric_keys -xkb_symbols "dvorak" { - - name[Group1]= "USA - Dvorak"; - - // Alphanumeric section - - key <TLDE> { [ grave, asciitilde, dead_grave, dead_tilde ] }; - - key <AE01> { [ 1, exclam ] }; - key <AE02> { [ 2, at ] }; - key <AE03> { [ 3, numbersign ] }; - key <AE04> { [ 4, dollar ] }; - key <AE05> { [ 5, percent ] }; - key <AE06> { [ 6, asciicircum, dead_circumflex, dead_circumflex ] }; - key <AE07> { [ 7, ampersand ] }; - key <AE08> { [ 8, asterisk ] }; - key <AE09> { [ 9, parenleft, dead_grave] }; - key <AE10> { [ 0, parenright ] }; - key <AE11> { [ bracketleft, braceleft ] }; - key <AE12> { [ bracketright, braceright, dead_tilde] }; - - key <AD01> { [ apostrophe, quotedbl, dead_acute, dead_diaeresis ] }; - key <AD02> { [ comma, less, dead_cedilla, dead_caron ] }; - key <AD03> { [ period, greater, dead_abovedot, periodcentered ] }; - key <AD04> { [ p, P ] }; - key <AD05> { [ y, Y ] }; - key <AD06> { [ f, F ] }; - key <AD07> { [ g, G ] }; - key <AD08> { [ c, C ] }; - key <AD09> { [ r, R ] }; - key <AD10> { [ l, L ] }; - key <AD11> { [ slash, question ] }; - key <AD12> { [ equal, plus ] }; - - key <AC01> { [ a, A ] }; - key <AC02> { [ o, O ] }; - key <AC03> { [ e, E ] }; - key <AC04> { [ u, U ] }; - key <AC05> { [ i, I ] }; - key <AC06> { [ d, D ] }; - key <AC07> { [ h, H ] }; - key <AC08> { [ t, T ] }; - key <AC09> { [ n, N ] }; - key <AC10> { [ s, S ] }; - key <AC11> { [ minus, underscore ] }; - - key <AB01> { [ semicolon, colon, dead_ogonek, dead_doubleacute ] }; - key <AB02> { [ q, Q ] }; - key <AB03> { [ j, J ] }; - key <AB04> { [ k, K ] }; - key <AB05> { [ x, X ] }; - key <AB06> { [ b, B ] }; - key <AB07> { [ m, M ] }; - key <AB08> { [ w, W ] }; - key <AB09> { [ v, V ] }; - key <AB10> { [ z, Z ] }; - - key <BKSL> { [ backslash, bar ] }; -}; - -// Dvorak international with dead keys -// Olivier Mehani (shtrom-xorg@ssji.net) -// Reproduce the per-key mapping of us(intl) for the dvorak layout -// aka "I just swapped my keys over" -partial alphanumeric_keys -xkb_symbols "dvorak-intl" { - - name[Group1]= "USA - Dvorak international (with dead keys)"; - - include "us(dvorak)" - - key <TLDE> { [dead_grave, dead_tilde, grave, asciitilde ] }; - - key <AE01> { [ 1, exclam, exclamdown, onesuperior ] }; - key <AE02> { [ 2, at, twosuperior, dead_doubleacute ] }; - key <AE03> { [ 3, numbersign, threesuperior, dead_macron ] }; - key <AE04> { [ 4, dollar, currency, sterling ] }; - key <AE05> { [ 5, percent, EuroSign, dead_cedilla ] }; - key <AE06> { [ 6, dead_circumflex, onequarter, asciicircum ] }; - key <AE07> { [ 7, ampersand, onehalf, dead_horn ] }; - key <AE08> { [ 8, asterisk, threequarters, dead_ogonek ] }; - key <AE09> { [ 9, parenleft, leftsinglequotemark, dead_breve ] }; - key <AE10> { [ 0, parenright, rightsinglequotemark, dead_abovering ] }; - key <AE11> { [ bracketleft, braceleft, guillemotleft, leftdoublequotemark ] }; - key <AE12> { [bracketright, braceright, guillemotright, rightdoublequotemark ] }; - - key <AD01> { [dead_acute, dead_diaeresis, apostrophe, quotedbl ] }; - key <AD02> { [ comma, less, ccedilla, Ccedilla ] }; - key <AD03> { [ period, greater, dead_abovedot, dead_caron ] }; - key <AD04> { [ p, P, odiaeresis, Odiaeresis ] }; - key <AD05> { [ y, Y, udiaeresis, Udiaeresis ] }; - // key <AD06> { [ f, F ] }; - // key <AD07> { [ g, G ] }; - key <AD08> { [ c, C, copyright, cent ] }; - key <AD09> { [ r, R, registered, registered ] }; - key <AD10> { [ l, L, oslash, Ooblique ] }; - key <AD11> { [ slash, question, questiondown, dead_hook ] }; - // key <AD12> { [ equal, plus, multiply, division ] }; - - key <AC01> { [ a, A, aacute, Aacute ] }; - key <AC02> { [ o, O, oacute, Oacute ] }; - key <AC03> { [ e, E, eacute, Eacute ] }; - key <AC04> { [ u, U, uacute, Uacute ] }; - key <AC05> { [ i, I, iacute, Iacute ] }; - key <AC06> { [ d, D, eth, ETH ] }; - // key <AC07> { [ h, H ] }; - key <AC08> { [ t, T, thorn, THORN ] }; - key <AC09> { [ n, N, ntilde, Ntilde ] }; - key <AC10> { [ s, S, ssharp, section ] }; - // key <AC11> { [ minus, underscore, yen, dead_belowdot ] }; - - key <AB01> { [ semicolon, colon, paragraph, degree ] }; - key <AB02> { [ q, Q, adiaeresis, Adiaeresis ] }; - // key <AB03> { [ j, J ] }; - key <AB04> { [ k, K, oe, OE ] }; - // key <AB05> { [ x, X ] }; - // key <AB06> { [ b, B ] }; - key <AB07> { [ m, M, mu, mu ] }; - key <AB08> { [ w, W, aring, Aring ] }; - // key <AB09> { [ v, V ] }; - key <AB10> { [ z, Z, ae, AE ] }; - - key <BKSL> { [ backslash, bar, notsign, brokenbar ] }; - - include "level3(ralt_switch)" -}; - -// Dvorak international without dead keys -// Stephane Magnenat (stephane at magnenat dot net, http://stephane.magnenat.net) -// Based on information from http://www.poupinou.org/dvorak/index.html -// -// ` 1 2 3 4 5 6 7 8 9 0 [ ] \ -// € -// -// ' , . p y f g c r l / = -// ä ê ë ü ç -// -// a o e u i d h t n s - -// à ô é û î ß -// -// ; q j k x b m w v z -// â ö è ù ï - -partial alphanumeric_keys -xkb_symbols "dvorak-alt-intl" { - - name[Group1]= "USA - Dvorak alternative international (no dead keys)"; - - include "us(dvorak)" - - key <AE04> { [ 4, dollar, EuroSign ] }; - - key <AD02> { [ comma, less, adiaeresis, dead_caron ] }; - key <AD03> { [ period, greater, ecircumflex, periodcentered ] }; - key <AD04> { [ p, P, ediaeresis, dead_cedilla ] }; - key <AD05> { [ y, Y, udiaeresis ] }; - key <AD08> { [ c, C, ccedilla, dead_abovedot ] }; - - key <AC01> { [ a, A, agrave ] }; - key <AC02> { [ o, O, ocircumflex ] }; - key <AC03> { [ e, E, eacute ] }; - key <AC04> { [ u, U, ucircumflex ] }; - key <AC05> { [ i, I, icircumflex ] }; - key <AC10> { [ s, S, ssharp ] }; - - key <AB01> { [ semicolon, colon, acircumflex ] }; - key <AB02> { [ q, Q, odiaeresis, dead_ogonek ] }; - key <AB03> { [ j, J, egrave, dead_doubleacute ] }; - key <AB04> { [ k, K, ugrave ] }; - key <AB05> { [ x, X, idiaeresis ] }; - - include "level3(ralt_switch)" -}; - -// Left and right handed dvorak layouts -// by sqweek <sqweek@gmail.com> 2006-01-30 -// Based on the corresponding layouts in the console-tools package. -partial alphanumeric_keys -xkb_symbols "dvorak-l" { - - include "us(dvorak)" - name[Group1]= "USA - Left handed Dvorak"; - - key <AE01> { [ bracketleft, braceleft ] }; - key <AE02> { [ bracketright, braceright ] }; - key <AE03> { [ slash, question ] }; - key <AE04> { [ p, P ] }; - key <AE05> { [ f, F ] }; - key <AE06> { [ m, M ] }; - key <AE07> { [ l, L ] }; - key <AE08> { [ j, J ] }; - key <AE09> { [ 4, dollar ] }; - key <AE10> { [ 3, numbersign ] }; - key <AE11> { [ 2, at ] }; - key <AE12> { [ 1, exclam ] }; - - key <AD01> { [ semicolon, colon ] }; - key <AD02> { [ q, Q ] }; - key <AD03> { [ b, B ] }; - key <AD04> { [ y, Y ] }; - key <AD05> { [ u, U ] }; - key <AD06> { [ r, R ] }; - key <AD07> { [ s, S ] }; - key <AD08> { [ o, O ] }; - key <AD09> { [ period, greater ] }; - key <AD10> { [ 6, asciicircum ] }; - key <AD11> { [ 5, percent ] }; - key <AD12> { [ equal, plus ] }; - - key <AC01> { [ minus, underscore ] }; - key <AC02> { [ k, K ] }; - key <AC03> { [ c, C ] }; - key <AC04> { [ d, D ] }; - key <AC05> { [ t, T ] }; - key <AC06> { [ h, H ] }; - key <AC07> { [ e, E ] }; - key <AC08> { [ a, A ] }; - key <AC09> { [ z, Z ] }; - key <AC10> { [ 8, asterisk ] }; - key <AC11> { [ 7, ampersand ] }; - - key <AB01> { [ apostrophe, quotedbl ] }; - key <AB02> { [ x, X ] }; - key <AB03> { [ g, G ] }; - key <AB04> { [ v, V ] }; - key <AB05> { [ w, W ] }; - key <AB06> { [ n, N ] }; - key <AB07> { [ i, I ] }; - key <AB08> { [ comma, less ] }; - key <AB09> { [ 0, parenright ] }; - key <AB10> { [ 9, parenleft ] }; -}; - -partial alphanumeric_keys -xkb_symbols "dvorak-r" { - - include "us(dvorak)" - name[Group1]= "USA - Right handed Dvorak"; - - key <AE01> { [ 1, exclam ] }; - key <AE02> { [ 2, at ] }; - key <AE03> { [ 3, numbersign ] }; - key <AE04> { [ 4, dollar ] }; - key <AE05> { [ j, J ] }; - key <AE06> { [ l, L ] }; - key <AE07> { [ m, M ] }; - key <AE08> { [ f, F ] }; - key <AE09> { [ p, P ] }; - key <AE10> { [ slash, question ] }; - key <AE11> { [ bracketleft, braceleft ] }; - key <AE12> { [ bracketright, braceright ] }; - - key <AD01> { [ 5, percent ] }; - key <AD02> { [ 6, asciicircum ] }; - key <AD03> { [ q, Q ] }; - key <AD04> { [ period, greater ] }; - key <AD05> { [ o, O ] }; - key <AD06> { [ r, R ] }; - key <AD07> { [ s, S ] }; - key <AD08> { [ u, U ] }; - key <AD09> { [ y, Y ] }; - key <AD10> { [ b, B ] }; - key <AD11> { [ semicolon, colon ] }; - key <AD12> { [ equal, plus ] }; - - key <AC01> { [ 7, ampersand ] }; - key <AC02> { [ 8, asterisk ] }; - key <AC03> { [ z, Z ] }; - key <AC04> { [ a, A ] }; - key <AC05> { [ e, E ] }; - key <AC06> { [ h, H ] }; - key <AC07> { [ t, T ] }; - key <AC08> { [ d, D ] }; - key <AC09> { [ c, C ] }; - key <AC10> { [ k, K ] }; - key <AC11> { [ minus, underscore ] }; - - key <AB01> { [ 9, parenleft ] }; - key <AB02> { [ 0, parenright ] }; - key <AB03> { [ x, X ] }; - key <AB04> { [ comma, less ] }; - key <AB05> { [ i, I ] }; - key <AB06> { [ n, N ] }; - key <AB07> { [ w, W ] }; - key <AB08> { [ v, V ] }; - key <AB09> { [ g, G ] }; - key <AB10> { [ apostrophe, quotedbl ] }; -}; - -// Classic dvorak layout -// by Piter Punk <piterpk@terra.com.br> - 2006-07-06 -// Based on dvorak layout and e-mail from Russel L. Harris rlharris@oplink.net -// on xorg list. -partial alphanumeric_keys -xkb_symbols "dvorak-classic" { - - name[Group1]= "USA - Classic Dvorak"; - - // Alphanumeric section - - key <TLDE> { [ grave, asciitilde, dead_grave, dead_tilde ] }; - - key <AE01> { [ bracketleft, braceleft ] }; - key <AE02> { [ 7, ampersand ] }; - key <AE03> { [ 5, percent ] }; - key <AE04> { [ 3, numbersign ] }; - key <AE05> { [ 1, exclam ] }; - key <AE06> { [ 9, parenleft, dead_grave] }; - key <AE07> { [ 0, parenright ] }; - key <AE08> { [ 2, at ] }; - key <AE09> { [ 4, dollar ] }; - key <AE10> { [ 6, asciicircum, dead_circumflex, dead_circumflex ] }; - key <AE11> { [ 8, asterisk ] }; - key <AE12> { [ bracketright, braceright, dead_tilde] }; - - key <AD01> { [ slash, question ] }; - key <AD02> { [ comma, less, dead_cedilla, dead_caron ] }; - key <AD03> { [ period, greater, dead_abovedot, periodcentered ] }; - key <AD04> { [ p, P ] }; - key <AD05> { [ y, Y ] }; - key <AD06> { [ f, F ] }; - key <AD07> { [ g, G ] }; - key <AD08> { [ c, C ] }; - key <AD09> { [ r, R ] }; - key <AD10> { [ l, L ] }; - key <AD11> { [ apostrophe, quotedbl, dead_acute, dead_diaeresis ] }; - key <AD12> { [ equal, plus ] }; - - key <AC01> { [ a, A ] }; - key <AC02> { [ o, O ] }; - key <AC03> { [ e, E ] }; - key <AC04> { [ u, U ] }; - key <AC05> { [ i, I ] }; - key <AC06> { [ d, D ] }; - key <AC07> { [ h, H ] }; - key <AC08> { [ t, T ] }; - key <AC09> { [ n, N ] }; - key <AC10> { [ s, S ] }; - key <AC11> { [ minus, underscore ] }; - - key <AB01> { [ semicolon, colon, dead_ogonek, dead_doubleacute ] }; - key <AB02> { [ q, Q ] }; - key <AB03> { [ j, J ] }; - key <AB04> { [ k, K ] }; - key <AB05> { [ x, X ] }; - key <AB06> { [ b, B ] }; - key <AB07> { [ m, M ] }; - key <AB08> { [ w, W ] }; - key <AB09> { [ v, V ] }; - key <AB10> { [ z, Z ] }; - key <BKSL> { [ backslash, bar ] }; -}; - -// Programmer Dvorak, by Roland Kaufmann <rlndkfmn at gmail dot com> -// License: BSD, available at <http://www.kaufmann.no/roland/dvorak/license.html> -// Main features: Numbers are in shift position (like French), symbols have been -// placed in locations that give good hand-alternation and finger rolling with -// symbols that usually follows, accented characters are possible for I18N. -partial alphanumeric_keys -xkb_symbols "dvp" { - include "us(dvorak)" - - name[Group1] = "USA - Programmer Dvorak"; - - // Unmodified Shift AltGr Shift+AltGr - // symbols row, left side - key <TLDE> { [ dollar, asciitilde, dead_tilde ] }; - key <AE01> { [ ampersand, percent ] }; - key <AE02> { [ bracketleft, 7, currency ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; - key <AE03> { [ braceleft, 5, cent ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; - key <AE04> { [ braceright, 3, yen ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; - key <AE05> { [ parenleft, 1, EuroSign ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; - key <AE06> { [ equal, 9, sterling ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; - - // symbols row, right side - key <AE07> { [ asterisk, 0 ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; - key <AE08> { [ parenright, 2, onehalf ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; - key <AE09> { [ plus, 4 ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; - key <AE10> { [ bracketright, 6 ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; - key <AE11> { [ exclam, 8, exclamdown ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; - key <AE12> { [ numbersign, grave, dead_grave ] }; - key <BKSP> { [ BackSpace ] }; - - // upper row, left side - key <AD01> { [ semicolon, colon, dead_diaeresis ] }; - key <AD02> { [ comma, less, guillemotleft ] }; - key <AD03> { [ period, greater, guillemotright ] }; - key <AD04> { [ p, P, paragraph, section ] }; - key <AD05> { [ y, Y, udiaeresis, Udiaeresis ] }; - - // upper row, right side - key <AD08> { [ c, C, ccedilla, Ccedilla ] }; - key <AD09> { [ r, R, registered, trademark ] }; - key <AD11> { [ slash, question, questiondown ] }; - key <AD12> { [ at, asciicircum, dead_circumflex, dead_caron ] }; - - // home row, left side - key <AC01> { [ a, A, aring, Aring ] }; - key <AC02> { [ o, O, oslash, Ooblique ] }; - key <AC03> { [ e, E, ae, AE ] }; - key <AC04> { [ u, U, eacute, Eacute ] }; - - // home row, right side - key <AC06> { [ d, D, eth, ETH ] }; - key <AC07> { [ h, H, dead_acute ] }; - key <AC08> { [ t, T, thorn, THORN ] }; - key <AC09> { [ n, N, ntilde, Ntilde ] }; - key <AC10> { [ s, S, ssharp ] }; - key <AC11> { [ minus, underscore, hyphen ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" }; - key <BKSL> { [ backslash, bar ] }; - - // lower row, left side - key <AB01> { [ apostrophe, quotedbl, dead_acute ] }; -}; - -// phonetic layout for Russian letters on an US keyboard -// by Ivan Popov <pin@konvalo.org> 2005-07-17 - -// level3 modifier is a shortcut to the "us" meaning of the keys where -// we place cyrillic letters, handy for accessing the corresponding -// punctuation marks. -// It is important to have access to punctuation marks, and the rest of -// alphabetical keys are added for being consequent so that the users -// can expect the level3 modifier to give what the key label shows. - -partial alphanumeric_keys -xkb_symbols "rus" { - - name[Group1]= "USA - Russian phonetic"; - - include "us(basic)" - -key.type[group1]="FOUR_LEVEL_ALPHABETIC"; - - key <LatA> { [ Cyrillic_a, Cyrillic_A ] }; - key <LatB> { [ Cyrillic_be, Cyrillic_BE ] }; - key <LatW> { [ Cyrillic_ve, Cyrillic_VE ] }; - key <LatG> { [ Cyrillic_ghe, Cyrillic_GHE ] }; - key <LatD> { [ Cyrillic_de, Cyrillic_DE ] }; - key <LatE> { [ Cyrillic_ie, Cyrillic_IE ] }; - key <TLDE> { [ Cyrillic_io, Cyrillic_IO, grave, asciitilde ] }; - key <LatV> { [ Cyrillic_zhe, Cyrillic_ZHE ] }; - key <LatZ> { [ Cyrillic_ze, Cyrillic_ZE ] }; - key <LatI> { [ Cyrillic_i, Cyrillic_I ] }; - key <LatJ> { [ Cyrillic_shorti, Cyrillic_SHORTI ] }; - key <LatK> { [ Cyrillic_ka, Cyrillic_KA ] }; - key <LatL> { [ Cyrillic_el, Cyrillic_EL ] }; - key <LatM> { [ Cyrillic_em, Cyrillic_EM ] }; - key <LatN> { [ Cyrillic_en, Cyrillic_EN ] }; - key <LatO> { [ Cyrillic_o, Cyrillic_O ] }; - key <LatP> { [ Cyrillic_pe, Cyrillic_PE ] }; - key <LatR> { [ Cyrillic_er, Cyrillic_ER ] }; - key <LatS> { [ Cyrillic_es, Cyrillic_ES ] }; - key <LatT> { [ Cyrillic_te, Cyrillic_TE ] }; - key <LatU> { [ Cyrillic_u, Cyrillic_U ] }; - key <LatF> { [ Cyrillic_ef, Cyrillic_EF ] }; - key <LatH> { [ Cyrillic_ha, Cyrillic_HA ] }; - key <LatC> { [ Cyrillic_tse, Cyrillic_TSE ] }; - key <AC10> { [ Cyrillic_che, Cyrillic_CHE, semicolon, colon ] }; - key <AD11> { [ Cyrillic_sha, Cyrillic_SHA, bracketleft, braceleft] }; - key <AD12> { [ Cyrillic_shcha, Cyrillic_SHCHA, bracketright, braceright ] }; - key <AE12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, equal, plus ] }; - key <LatY> { [ Cyrillic_yeru, Cyrillic_YERU ] }; - key <LatX> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; - key <BKSL> { [ Cyrillic_e, Cyrillic_E, backslash, bar ] }; - key <AC11> { [ Cyrillic_yu, Cyrillic_YU, apostrophe, quotedbl ] }; - key <LatQ> { [ Cyrillic_ya, Cyrillic_YA ] }; - - include "level3(ralt_switch)" -}; - -partial alphanumeric_keys -xkb_symbols "mac" { - - include "us(basic)" - name[Group1]= "USA - Macintosh"; - key.type[group1]="FOUR_LEVEL"; - - // Slightly improvised from http://homepage.mac.com/thgewecke/kblayout.jpg - key <LSGT> { [ section, plusminus, section, plusminus ] }; - key <TLDE> { [ grave, asciitilde, dead_grave, dead_horn ] }; - key <AE01> { [ 1, exclam, exclamdown, U2044 ] }; - key <AE02> { [ 2, at, trademark, EuroSign ] }; - key <AE03> { [ 3, numbersign, sterling, U2039 ] }; - key <AE04> { [ 4, dollar, cent, U203A ] }; - key <AE05> { [ 5, percent, infinity, UFB01 ] }; - key <AE06> { [ 6,asciicircum, section, UFB02 ] }; - key <AE07> { [ 7, ampersand, paragraph, doubledagger ] }; - key <AE08> { [ 8, asterisk, enfilledcircbullet, degree ] }; - key <AE09> { [ 9, parenleft, ordfeminine, periodcentered ] }; - key <AE10> { [ 0, parenright, masculine,singlelowquotemark] }; - key <AE11> { [ minus, underscore, endash, emdash ] }; - key <AE12> { [ equal, plus, notequal, plusminus ] }; - - key <AD01> { [ q, Q, oe, OE ] }; - key <AD02> { [ w, W, U2211,doublelowquotemark] }; - key <AD03> { [ e, E, dead_acute, acute ] }; - key <AD04> { [ r, R, registered, U2030 ] }; - key <AD05> { [ t, T, dagger, dead_caron ] }; - key <AD06> { [ y, Y, yen, onequarter ] }; - key <AD07> { [ u, U, dead_diaeresis, diaeresis ] }; - key <AD08> { [ i, I, dead_circumflex, U02C6 ] }; - key <AD09> { [ o, O, oslash, Ooblique ] }; - key <AD10> { [ p, P, Greek_pi, U220F ] }; - key <AD11> { [ bracketleft, braceleft, leftdoublequotemark, rightdoublequotemark ] }; - key <AD12> { [bracketright, braceright, leftsinglequotemark, rightsinglequotemark ] }; - key <BKSL> { [ backslash, bar, guillemotleft, guillemotright ] }; - - key <AC01> { [ a, A, aring, Aring ] }; - key <AC02> { [ s, S, ssharp, dead_stroke ] }; - key <AC03> { [ d, D, partialderivative, eth ] }; - key <AC04> { [ f, F, function, dead_hook ] }; - key <AC05> { [ g, G, copyright, dead_doubleacute ] }; - key <AC06> { [ h, H, dead_abovedot, dead_belowdot ] }; - key <AC07> { [ j, J, U2206, onehalf ] }; - key <AC08> { [ k, K,dead_abovering, UF8FF ] }; - - key <AC09> { [ l, L, notsign, THORN ] }; - key <AC10> { [ semicolon, colon, U2026, thorn ] }; - key <AC11> { [apostrophe, quotedbl, ae, AE ] }; - - key <AB01> { [ z, Z, Greek_OMEGA, dead_cedilla ] }; - key <AB02> { [ x, X, U2248, dead_ogonek ] }; - // unclear whether "approxeq" is 2248 or 2245 - key <AB03> { [ c, C, ccedilla, Ccedilla ] }; - key <AB04> { [ v, V, squareroot, U25CA ] }; - key <AB05> { [ b, B, integral, idotless ] }; - key <AB06> { [ n, N, dead_tilde, U02DC ] }; - key <AB07> { [ m, M, mu, threequarters ] }; - key <AB08> { [ comma, less, lessthanequal, dead_macron ] }; - key <AB09> { [ period, greater, greaterthanequal, dead_breve ] }; - key <AB10> { [ slash, question, division, questiondown ] }; - - include "level3(ralt_switch)" -}; - -// Colemak symbols for xkb on X.Org Server 7.x -// 2006-01-01 Shai Coleman, http://colemak.com/ . Public domain. - -partial alphanumeric_keys -xkb_symbols "colemak" { - include "us" - name[Group1]= "USA - Colemak"; - - // Alphanumeric section - key <TLDE> { [ grave, asciitilde, dead_tilde, asciitilde ] }; - key <AE01> { [ 1, exclam, exclamdown, onesuperior ] }; - key <AE02> { [ 2, at, masculine, twosuperior ] }; - key <AE03> { [ 3, numbersign, ordfeminine, threesuperior ] }; - key <AE04> { [ 4, dollar, cent, sterling ] }; - key <AE05> { [ 5, percent, EuroSign, yen ] }; - key <AE06> { [ 6, asciicircum, hstroke, Hstroke ] }; - key <AE07> { [ 7, ampersand, eth, ETH ] }; - key <AE08> { [ 8, asterisk, thorn, THORN ] }; - key <AE09> { [ 9, parenleft, leftsinglequotemark, leftdoublequotemark ] }; - key <AE10> { [ 0, parenright, rightsinglequotemark, rightdoublequotemark ] }; - key <AE11> { [ minus, underscore, endash, emdash ] }; - key <AE12> { [ equal, plus, multiply, division ] }; - - key <AD01> { [ q, Q, adiaeresis, Adiaeresis ] }; - key <AD02> { [ w, W, aring, Aring ] }; - key <AD03> { [ f, F, atilde, Atilde ] }; - key <AD04> { [ p, P, oslash, Ooblique ] }; - key <AD05> { [ g, G, dead_ogonek, asciitilde ] }; - key <AD06> { [ j, J, dstroke, Dstroke ] }; - key <AD07> { [ l, L, lstroke, Lstroke ] }; - key <AD08> { [ u, U, uacute, Uacute ] }; - key <AD09> { [ y, Y, udiaeresis, Udiaeresis ] }; - key <AD10> { [ semicolon, colon, odiaeresis, Odiaeresis ] }; - key <AD11> { [ bracketleft, braceleft, guillemotleft, 0x1002039 ] }; - key <AD12> { [ bracketright, braceright, guillemotright, 0x100203a ] }; - key <BKSL> { [ backslash, bar, asciitilde, asciitilde ] }; - - key <AC01> { [ a, A, aacute, Aacute ] }; - key <AC02> { [ r, R, dead_grave, asciitilde ] }; - key <AC03> { [ s, S, ssharp, asciitilde ] }; - key <AC04> { [ t, T, dead_acute, dead_doubleacute ] }; - key <AC05> { [ d, D, dead_diaeresis, asciitilde ] }; - key <AC06> { [ h, H, dead_caron, asciitilde ] }; - key <AC07> { [ n, N, ntilde, Ntilde ] }; - key <AC08> { [ e, E, eacute, Eacute ] }; - key <AC09> { [ i, I, iacute, Iacute ] }; - key <AC10> { [ o, O, oacute, Oacute ] }; - key <AC11> { [ apostrophe, quotedbl, otilde, Otilde ] }; - - key <AB01> { [ z, Z, ae, AE ] }; - key <AB02> { [ x, X, dead_circumflex, asciitilde ] }; - key <AB03> { [ c, C, ccedilla, Ccedilla ] }; - key <AB04> { [ v, V, oe, OE ] }; - key <AB05> { [ b, B, dead_breve, asciitilde ] }; - key <AB06> { [ k, K, dead_abovering, asciitilde ] }; - key <AB07> { [ m, M, dead_macron, asciitilde ] }; - key <AB08> { [ comma, less, dead_cedilla, asciitilde ] }; - key <AB09> { [ period, greater, dead_abovedot, asciitilde ] }; - key <AB10> { [ slash, question, questiondown, asciitilde ] }; - - key <CAPS> { [ BackSpace, BackSpace, BackSpace, BackSpace ] }; - key <LSGT> { [ minus, underscore, endash, emdash ] }; - key <SPCE> { [ space, space, space, nobreakspace ] }; - - include "level3(ralt_switch)" -}; - -// I do NOT like dead-keys - the International keyboard as defined by Microsoft -// doesn't fit my needs. Why use two keystrokes for all simple characters (eg ' -// and <space> generates a single ') just to have an é (eacute) in two strokes -// as well? I type ' more often than é (eacute). -// -// This file works just like a regular keyboard, BUT has all dead-keys -// accessible at level3 (through AltGr). An ë (ediaeresis) is now: AltGr+" -// followed by an e. In other words, this keyboard is not international as long -// as you leave the right Alt key alone. -// -// The original MS International keyboard was intended for Latin1 (iso8859-1). -// With the introduction of iso8859-15, the (important) ligature oe (and OE) -// became available. I added them next to ae. Because I write ediaeresis more -// often than registered, I moved registered to be next to copyright and added -// ediaeresis and idiaeresis. - Adriaan - -partial alphanumeric_keys -xkb_symbols "altgr-intl" { - - name[Group1]= "USA - International (AltGr dead keys)"; - - include "us(intl)" - -// five dead keys moved into level3: - - key <TLDE> { [ grave, asciitilde, dead_grave, dead_tilde ] }; - key <AC11> { [apostrophe,quotedbl, dead_acute, dead_diaeresis ] }; - -// diversions from the MS Intl keyboard: - - key <AE01> { [ 1, exclam, onesuperior, exclamdown ] }; - key <AD04> { [ r, R, ediaeresis, Ediaeresis ] }; - key <AC07> { [ j, J, idiaeresis, Idiaeresis ] }; - key <AB02> { [ x, X, oe, OE ] }; - key <AB04> { [ v, V, registered, registered ] }; - -// onequarter etc (not in iso8859-15) moved to get three unshifted deadkeys: - - key <AE06> { [ 6, asciicircum, dead_circumflex, onequarter ] }; - key <AE07> { [ 7, ampersand, dead_horn, onehalf ] }; - key <AE08> { [ 8, asterisk, dead_ogonek, threequarters ] }; - - include "level3(ralt_switch)" -}; - -// Intel ClassmatePC Keyboard Layout -// by Piter PUNK <piterpk@terra.com.br> -// -// The keyboard layouts below maps the us(basic), us(intl) and us(alt-intl) -// to ClassmatePC keyboard. All layouts uses RCTL as level3(switch) since -// the keyboard doesn't have AltGr key. The EuroSign is engraved at 5 key. - -// classmate - us(basic) -partial alphanumeric_keys -xkb_symbols "classmate" { - include "us(basic)" - name[Group1]= "USA - ClassmatePC"; - - key <LSGT> { [ backslash, bar, backslash, bar ] }; - - include "eurosign(5)" - include "level3(switch)" -}; - -// classmate-intl - us(intl) -// RCTL is generated by Fn+Alt, because that, when trying to access -// the level3 symbols at 7,8,9,0,u,i,o,p,j,k,l,;,m,. and / we got -// the keypad keycodes. The keypad is changed to make Fn+Alt+<KP_key> -// generate the same symbol as the original key. -partial alphanumeric_keys -xkb_symbols "classmate-intl" { - include "us(intl)" - name[Group1]= "USA - ClassmatePC (International)"; - key.type[Group1]="FOUR_LEVEL"; - - key <LSGT> { [ backslash, bar, backslash, bar ] }; - - key <KP7> { [ KP_Home, KP_7, - onehalf, dead_horn ] }; - key <KP8> { [ KP_Up, KP_8, - threequarters, dead_ogonek ] }; - key <KP9> { [ KP_Prior, KP_9, - leftsinglequotemark, dead_breve ] }; - key <KPMU> { [ KP_Multiply, KP_Multiply, - rightsinglequotemark, dead_abovering ] }; - - key <KP4> { [ KP_Left, KP_4, - uacute, Uacute ] }; - key <KP5> { [ KP_Begin, KP_5, - iacute, Iacute ] }; - key <KP6> { [ KP_Right, KP_6, - oacute, Oacute ] }; - key <KPSU> { [ KP_Subtract, KP_Subtract, - odiaeresis, Odiaeresis ] }; - - key <KP2> { [ KP_Down, KP_2, - oe, OE ] }; - key <KP3> { [ KP_Next, KP_3, - oslash, Ooblique ] }; - key <KPAD> { [ KP_Add, KP_Add, - paragraph, degree ] }; - - key <KP0> { [ KP_Insert, KP_0, - mu, mu ] }; - key <KPDL> { [ KP_Delete, KP_Decimal, - dead_abovedot, dead_caron ] }; - key <KPDV> { [ KP_Divide, KP_Divide, - questiondown, dead_hook ] }; - - include "level3(switch)" -}; - -// classmate-alt-intl - us(alt-intl) -// RCTL is generated by Fn+Alt, because that, when trying to access -// the level3 symbols at 7,8,9,0,u,i,o,p,j,k,l,;,m,. and / we got -// the keypad keycodes. The keypad is changed to make Fn+Alt+<KP_key> -// generate the same symbol as the original key. -partial alphanumeric_keys -xkb_symbols "classmate-alt-intl" { - include "us(alt-intl)" - name[Group1]= "USA - ClassmatePC (Alternative international)"; - key.type[Group1]="FOUR_LEVEL"; - - key <LSGT> { [ backslash, bar, backslash, bar ] }; - - key <KPSU> { [ KP_Subtract, KP_Subtract ] }; - - key <KP9> { [ KP_Prior, KP_9, - leftsinglequotemark, dead_breve ] }; - key <KPMU> { [ KP_Multiply, KP_Multiply, - rightsinglequotemark, dead_abovering ] }; - - key <KPAD> { [ KP_Add, KP_Add, - dead_ogonek, dead_diaeresis ] }; - - key <KPDL> { [ KP_Delete, KP_Decimal, - dead_abovedot, dead_circumflex ] }; - key <KPDV> { [ KP_Divide, KP_Divide, - dead_hook, dead_hook ] }; - - include "level3(switch)" -}; - -// classmate-altgr-intl - us(altgr-intl) -// RCTL is generated by Fn+Alt, because that, when trying to access -// the level3 symbols at 7,8,9,0,u,i,o,p,j,k,l,;,m,. and / we got -// the keypad keycodes. The keypad is changed to make Fn+Alt+<KP_key> -// generate the same symbol as the original key. -partial alphanumeric_keys -xkb_symbols "classmate-altgr-intl" { - include "us(altgr-intl)" - name[Group1]= "USA - ClassmatePC (International Fn+Alt dead-keys)"; - key.type[Group1]="FOUR_LEVEL"; - - key <LSGT> { [ backslash, bar, backslash, bar ] }; - - key <KP7> { [ KP_Home, KP_7, - dead_horn, dead_horn ] }; - key <KP8> { [ KP_Up, KP_8, - dead_ogonek, dead_ogonek ] }; - key <KP9> { [ KP_Prior, KP_9, - leftsinglequotemark, dead_breve ] }; - key <KPMU> { [ KP_Multiply, KP_Multiply, - rightsinglequotemark, dead_abovering ] }; - - key <KP4> { [ KP_Left, KP_4, - uacute, Uacute ] }; - key <KP5> { [ KP_Begin, KP_5, - iacute, Iacute ] }; - key <KP6> { [ KP_Right, KP_6, - oacute, Oacute ] }; - key <KPSU> { [ KP_Subtract, KP_Subtract, - odiaeresis, Odiaeresis ] }; - - key <KP1> { [ KP_End, KP_1, - idiaeresis, Idiaeresis ] }; - key <KP2> { [ KP_Down, KP_2, - oe, OE ] }; - key <KP3> { [ KP_Next, KP_3, - oslash, Ooblique ] }; - key <KPAD> { [ KP_Add, KP_Add, - paragraph, degree ] }; - - key <KP0> { [ KP_Insert, KP_0, - mu, mu ] }; - key <KPDL> { [ KP_Delete, KP_Decimal, - dead_abovedot, dead_caron ] }; - key <KPDV> { [ KP_Divide, KP_Divide, - questiondown, dead_hook ] }; - - include "level3(switch)" -}; - -partial alphanumeric_keys -xkb_symbols "olpc" { - - include "us(basic)" - name[Group1]= "USA"; - - // OLPC international US English keyboard layout. - // It's a little different from the usual international layout. - // See: http://wiki.laptop.org/go/Image:Keyboard_english.png - - key <TLDE> { [ grave, asciitilde, dead_grave, dead_tilde ] }; - key <AE01> { [ 1, exclam, exclamdown, exclamdown ] }; - key <AE02> { [ 2, at, notsign, notsign ] }; - key <AE03> { [ 3, numbersign, 0x1000300, 0x1000300 ] }; // combining grave - key <AE04> { [ 4, dollar, 0x1000301, 0x1000301 ] }; // combining acute - key <AE05> { [ 5, percent, 0x1000306, 0x1000306 ] }; // combining breve above - key <AE06> { [ 6,asciicircum, 0x100030A, 0x100030A ] }; // combining ring above - key <AE07> { [ 7, ampersand, 0x1000302, 0x1000302 ] }; // combining circumflex above - key <AE08> { [ 8, asterisk, 0x100030C, 0x100030C ] }; // combining caron above - key <AE09> { [ 9, parenleft, 0x1000307, 0x1000307 ] }; // combining dot above - key <AE10> { [ 0, parenright, 0x1000308, 0x1000308 ] }; // combining diaeresis above - key <AE11> { [ minus, underscore, 0x1000304, 0x1000304 ] }; // combining macron above - key <AE12> { [ equal, plus, 0x1000303, 0x1000303 ] }; // combining tilde above - - key <AD01> { [ q, Q, Greek_omega, Greek_OMEGA ] }; - key <AD02> { [ w, W, oslash, Oslash ] }; - key <AD03> { [ e, E, oe, OE ] }; - key <AD04> { [ r, R, 0x1000327, 0x1000327 ] }; // combining cedilla - key <AD05> { [ t, T, 0x100032E, 0x100032E ] }; // combining breve below - key <AD06> { [ y, Y, 0x1000325, 0x1000325 ] }; // combining ring below - key <AD07> { [ u, U, 0x100032D, 0x100032D ] }; // combining circumflex below - key <AD08> { [ i, I, 0x100032C, 0x100032C ] }; // combining caron below - key <AD09> { [ o, O, 0x1000323, 0x1000323 ] }; // combining dot below - key <AD10> { [ p, P, 0x1000324, 0x1000324 ] }; // combining diaeresis below - key <AD11> { [ bracketleft, braceleft, 0x1000331, 0x1000331 ] }; // combining macron below - key <AD12> { [bracketright, braceright, 0x1000330, 0x1000330 ] }; // combining tilde below - - key <AC01> { [ a, A, ae, AE ] }; - key <AC02> { [ s, S, ssharp, 0x1001E9C ] }; // uppercase S sharp - key <AC03> { [ d, D, eth, ETH ] }; - key <AC04> { [ f, F, thorn, THORN ] }; - key <AC06> { [ h, H, sterling, sterling ] }; - key <AC07> { [ j, J, EuroSign, EuroSign ] }; - key <AC10> { [ semicolon, colon, masculine, ordfeminine ] }; - key <AC11> { [ apostrophe, quotedbl, currency, currency ] }; - key <BKSL> { [ backslash, bar, section, section ] }; - - key <AB03> { [ c, C, ccedilla, Ccedilla ] }; - key <AB06> { [ n, N, ntilde, Ntilde ] }; - key <AB07> { [ m, M, mu, mu ] }; - key <AB08> { [ comma, less, guillemotleft, guillemotleft ] }; - key <AB09> { [ period, greater, guillemotright, guillemotright ] }; - key <AB10> { [ slash, question, questiondown, questiondown ] }; - - key <I219> { [ multiply, division, ISO_Next_Group, ISO_Prev_Group ] }; - - include "level3(ralt_switch)" -}; - -partial alphanumeric_keys -xkb_symbols "olpc2" { - include "us(olpc)" - name[Group1]= "USA - Layout toggle on multiply/divide key"; - include "group(olpc)" -}; - -// Based on Cherokee Nation Official Layout -// http://www.cherokee.org/extras/downloads/font/Keyboard.htm - -partial alphanumeric_keys modifier_keys -xkb_symbols "chr" { - - name[Group1]= "USA - Cherokee"; - key.type[group1]="ALPHABETIC"; - - // Alphanumeric section - key <TLDE> { [ grave, U13CA ] }; - key <AE01> { [ 1, U13B1 ] }; - key <AE02> { [ 2, U13C7 ] }; - key <AE03> { [ 3, U13E7 ] }; - key <AE04> { [ U13D9, U13B0 ] }; - key <AE05> { [ U13E6, U13B9 ] }; - key <AE06> { [ U13DC, U13DD ] }; - key <AE07> { [ U13CB, U13E1 ] }; - key <AE08> { [ U13D6, U13BA ] }; - key <AE09> { [ U13D2, parenleft ] }; - key <AE10> { [ U13C4, parenright ] }; - key <AE11> { [ U13BF, U13BC ] }; - key <AE12> { [ U13F3, U13BD ] }; - - key <AD01> { [ U13AA, U13C6 ] }; - key <AD02> { [ U13B3, U13EB ] }; - key <AD03> { [ U13A1, U13E3 ] }; - key <AD04> { [ U13DB, U13CF ] }; - key <AD05> { [ U13D4, U13D8 ] }; - key <AD06> { [ U13EF, U13F2 ] }; - key <AD07> { [ U13A4, U13AD ] }; - key <AD08> { [ U13A2, U13F1 ] }; - key <AD09> { [ U13A3, U13EC ] }; - key <AD10> { [ U13C1, U13EA ] }; - key <AD11> { [ U13D5, U13D1 ] }; - key <AD12> { [ U13B6, U13E4 ] }; - key <BKSL> { [ U13E9, U13EE ] }; - - key <AC01> { [ U13A0, U13CC ] }; - key <AC02> { [ U13CD, U13CE ] }; - key <AC03> { [ U13D7, U13D0 ] }; - key <AC04> { [ U13A9, U13C8 ] }; - key <AC05> { [ U13A6, U13E5 ] }; - key <AC06> { [ U13AF, U13B2 ] }; - key <AC07> { [ U13DA, U13AB ] }; - key <AC08> { [ U13B8, U13A7 ] }; - key <AC09> { [ U13B5, U13AE ] }; - key <AC10> { [ U13E8, U13E0 ] }; - key <AC11> { [ apostrophe, quotedbl ] }; - - key <AB01> { [ U13AC, U13C3 ] }; - key <AB02> { [ U13F4, U13ED ] }; - key <AB03> { [ U13D3, U13DF ] }; - key <AB04> { [ U13A5, U13DE ] }; - key <AB05> { [ U13A8, U13F0 ] }; - key <AB06> { [ U13BE, U13BB ] }; - key <AB07> { [ U13C5, U13B7 ] }; - key <AB08> { [ comma, U13E2 ] }; - key <AB09> { [ period, U13B4 ] }; - key <AB10> { [ U13C2, U13C9 ] }; - - // End alphanumeric section -}; - -// Serbian charecters added as third level symbols to US keyboard layout. - -partial alphanumeric_keys -xkb_symbols "hbs" { - - name[Group1]= "USA - Serbo-Croatian"; - - include "us" - - key <TLDE> { [ grave, asciitilde ] }; - key <AE06> { [ 6, dead_caron, asciicircum, asciicircum ] }; - key <AC09> { [ l, L, U1C9, U1C8 ] }; - key <AB06> { [ n, N, U1CC, U1CB ] }; - key <AB01> { [ z, Z, U1C6, U1C5 ] }; - key <AD03> { [ e, E, EuroSign, cent ] }; - key <AC03> { [ d, D, dstroke, Dstroke ] }; - key <AC11> { [ dead_acute, quotedbl, apostrophe, apostrophe ] }; - key <SPCE> { [ space, space, nobreakspace, nobreakspace ] }; - key <AB08> { [ comma, less, NoSymbol, guillemotright ] }; - key <AB09> { [ period, greater, NoSymbol, guillemotleft ] }; - - include "level3(ralt_switch)" -}; - -//based on http://upload.wikimedia.org/wikipedia/commons/1/18/T-Mobile_G1_launch_event_2.jpg -partial alphanumeric_keys -xkb_symbols "htcdream" { - include "inet(htcdream)" - name[Group1]= "USA - htcdream"; - - //second row - key <AD01> { [ q, Q, Tab, Tab ] }; - key <AD02> { [ w, W, grave, grave ] }; - key <AD03> { [ e, E, underscore, underscore ] }; - key <AD04> { [ r, R, sterling, sterling ] }; - key <AD05> { [ t, T, EuroSign, EuroSign ] }; - key <AD06> { [ y, Y, division, division ] }; - key <AD07> { [ u, U, multiply, multiply ] }; - key <AD08> { [ i, I, minus, minus ] }; - key <AD09> { [ o, O, plus, plus ] }; - key <AD10> { [ p, P, equal, equal ] }; - - //third row - key <AC01> { [ a, A, NoSymbol, NoSymbol ] }; - key <AC02> { [ s, S, bar, bar ] }; - key <AC03> { [ d ,D, backslash, backslash ] }; - key <AC04> { [ f, F, braceleft, braceleft ] }; - key <AC05> { [ g, G, braceright, braceright ] }; - key <AC06> { [ h, H, colon, colon ] }; - key <AC07> { [ j, J, semicolon, semicolon ] }; - key <AC08> { [ k, K, quotedbl, quotedbl ] }; - key <AC09> { [ l, L, apostrophe, apostrophe ] }; - - //forth row - key <AB01> { [ z, Z, NoSymbol, NoSymbol ] }; - key <AB02> { [ x, X, NoSymbol, NoSymbol ] }; - key <AB03> { [ c, C, NoSymbol, NoSymbol ] }; - key <AB04> { [ v, V, bracketleft, bracketleft ] }; - key <AB05> { [ b, B, bracketright, bracketright ] }; - key <AB06> { [ n, N, less, less ] }; - key <AB07> { [ m, M, greater, greater ] }; - key <AB08> { [ comma, comma, question, question ] }; - - //fifth row - key <FK15> { [ at, at, asciitilde, asciitilde ] }; - - include "level3(alt_switch)" -}; - -// EXTRAS: - -// XCompose is out! Unicode combining is in! For those of us who live -// on the edge: A keymap using Unicode combining characters instead of -// deadkeys. This variation does not deviate from the lame MS-style -// US-intl layout; but it uses AltGr for combining, like altgr-intl. -// -// This might break your font layout layout systems (because they -// suck), caveat emptor. Also, most of today's software will count -// individual combining marks for selection, deletion, character -// counting &c., and won't be smart enough to do canonical equivalence -// when searching, &c. -// -// With Unicode combining you use "handwriting order", not -// "typewriting order" as with deadkeys. That is, you first type the -// base character, then the diacritics/accents/modifiers. This has -// the advantage of avoiding hidden states --- each keypress changes -// something on screen. -// -// TODO: as of now, this duplicates all us(intl) functionality with -// combining. With care, perhaps we could add more combining marks -// not present in intl, and support all major languages. -partial alphanumeric_keys -xkb_symbols "intl-unicode" { - - name[Group1]= "USA - International (AltGr Unicode combining)"; - - include "us(intl)" - include "level3(ralt_switch)" - - // grave, tilde - key <TLDE> { [grave, asciitilde, U0300, U0303 ] }; - // double acute - key <AE02> { [ 2, at, twosuperior, U030B ] }; - // macron - key <AE03> { [ 3, numbersign, threesuperior, U0304 ] }; - // circumflex - key <AE06> { [ 6, asciicircum, onequarter, U0302 ] }; - // horn - key <AE07> { [ 7, ampersand, onehalf, U031B ] }; - // ogonek - key <AE08> { [ 8, asterisk, threequarters, U0328 ] }; - // breve - key <AE09> { [ 9, parenleft, leftsinglequotemark, U0306 ] }; - // abovering - key <AE10> { [ 0, parenright, rightsinglequotemark, U030A ] }; - - // belowdot - key <AE11> { [ minus, underscore, yen, U0323 ] }; - // acute, diaeresis - key <AC11> { [apostrophe, quotedbl, U0301, U0308 ] }; - // abovedot, caron - key <AB09> { [ period, greater, U0307, U030C ] }; - // hook - key <AB10> { [ slash, question, questiondown, 0309 ] }; - - // alt-intl compatibility - // cedilla, caron - key <AB08> { [ comma, less, U0327, U030C ] }; - // ogonek, diaeresis - key <AC10> { [ semicolon, colon, U0328, U0308 ] }; - // doubleacute, horn - key <AE12> { [ equal, plus, U030B, U031B ] }; - - // we don't do combining latin letters and combining enclosures - // because support for those is very rare. -}; - -// XCompose is out! Unicode combining is in! For those of us who live -// on the edge: A keymap using Unicode combining characters instead of -// deadkeys. This variation does break compatibility with us-intl, -// whenever I thought it would be more mnemonic or Unicodeish. -partial alphanumeric_keys -xkb_symbols "alt-intl-unicode" { - - name[Group1]= "USA - International (AltGr Unicode combining, alternative)"; - - include "extras/us(intl-unicode)" - include "level3(ralt_switch)" - - // easier macron; em-dash. - // em-dash is available via compose, but I added here since it's such - // an important typographic character. - key <AE11> { [ minus, underscore, U0304, U2014 ] }; - - // belowdot, abovedot (caron at coma/less key, per above) - key <AB09> { [ period, greater, U0323, U0307 ] }; - -}; - -partial alphanumeric_keys -xkb_symbols "ats" { - - include "us" - - name[Group1]= "USA - Atsina"; - - //Using Dead key to get COMBINING COMMA ABOVE for ejectives on - //q, l, t, s, m, g, k, p, w, y, r - //XCompose key is used for the other accute and grave. - - key <AD03> { [ e, E, eacute, Eacute ] }; - key <AD07> { [ u, U, uacute, Uacute ] }; - key <AD08> { [ i, I, iacute, Iacute ] }; - key <AD09> { [ o, O, oacute, Oacute ] }; - key <AD11> { [ bracketleft, braceleft, U03B8 ] }; - key <AD12> { [ bracketright, braceright, U010D, U010C ] }; - //U+010C (uppercase Č) and U+010D (lowercase č). - - key <AC01> { [ a, A, aacute, Aacute ] }; - - - //Small letter Open use compose to key get acute accent - key <AB03> { [ c, C, U0254, U0186 ] }; - key <AB08> { [ comma, less, U0313 ] }; - key <AB10> { [ slash, question, U0294 ] }; - - include "level3(ralt_switch)" - include "compose(rctrl)" -}; - -partial alphanumeric_keys -xkb_symbols "crd" { - - include "us" - - name[Group1]= "USA - Couer D'alene Salish"; - - // Alphanumeric section - key <AD02> { [ w, W, U02B7, U02B7 ] }; - key <AE07> { [ 7, ampersand, U0294 ] }; - key <AD01> { [ q, Q, U221A ] }; - key <AB04> { [ v, V, U0259 ] }; - key <BKSL> { [ backslash, bar, U026B ] }; - key <AD03> { [ e, E, U025B ] }; - key <AD08> { [ i, I, U026A ] }; - key <AC07> { [ j, J, U01F0 ] }; - key <AE06> { [ 6, asciicircum, U0295 ] }; - key <AC02> { [ s, S, U0161 ] }; - key <AB03> { [ c, C, U010D ] }; - key <AD09> { [ o, O, U0254 ] }; - key <AB09> { [ period, greater, U0323 ] }; - - include "level3(ralt_switch)" - include "compose(rctrl)" - - // End alphanumeric section -}; +default
+partial alphanumeric_keys modifier_keys
+xkb_symbols "basic" {
+
+ name[Group1]= "USA";
+
+ // Alphanumeric section
+ key <TLDE> { [ grave, asciitilde ] };
+ key <AE01> { [ 1, exclam ] };
+ key <AE02> { [ 2, at ] };
+ key <AE03> { [ 3, numbersign ] };
+ key <AE04> { [ 4, dollar ] };
+ key <AE05> { [ 5, percent ] };
+ key <AE06> { [ 6, asciicircum ] };
+ key <AE07> { [ 7, ampersand ] };
+ key <AE08> { [ 8, asterisk ] };
+ key <AE09> { [ 9, parenleft ] };
+ key <AE10> { [ 0, parenright ] };
+ key <AE11> { [ minus, underscore ] };
+ key <AE12> { [ equal, plus ] };
+
+ key <AD01> { [ q, Q ] };
+ key <AD02> { [ w, W ] };
+ key <AD03> { [ e, E ] };
+ key <AD04> { [ r, R ] };
+ key <AD05> { [ t, T ] };
+ key <AD06> { [ y, Y ] };
+ key <AD07> { [ u, U ] };
+ key <AD08> { [ i, I ] };
+ key <AD09> { [ o, O ] };
+ key <AD10> { [ p, P ] };
+ key <AD11> { [ bracketleft, braceleft ] };
+ key <AD12> { [ bracketright, braceright ] };
+
+ key <AC01> { [ a, A ] };
+ key <AC02> { [ s, S ] };
+ key <AC03> { [ d, D ] };
+ key <AC04> { [ f, F ] };
+ key <AC05> { [ g, G ] };
+ key <AC06> { [ h, H ] };
+ key <AC07> { [ j, J ] };
+ key <AC08> { [ k, K ] };
+ key <AC09> { [ l, L ] };
+ key <AC10> { [ semicolon, colon ] };
+ key <AC11> { [ apostrophe, quotedbl ] };
+
+ key <AB01> { [ z, Z ] };
+ key <AB02> { [ x, X ] };
+ key <AB03> { [ c, C ] };
+ key <AB04> { [ v, V ] };
+ key <AB05> { [ b, B ] };
+ key <AB06> { [ n, N ] };
+ key <AB07> { [ m, M ] };
+ key <AB08> { [ comma, less ] };
+ key <AB09> { [ period, greater ] };
+ key <AB10> { [ slash, question ] };
+
+ key <BKSL> { [ backslash, bar ] };
+ // End alphanumeric section
+};
+
+partial alphanumeric_keys
+xkb_symbols "euro" {
+
+ name[Group1]= "USA - With EuroSign on 5";
+
+ include "us(basic)"
+
+ include "eurosign(5)"
+
+ include "level3(ralt_switch)"
+};
+
+
+partial alphanumeric_keys
+xkb_symbols "intl" {
+
+ name[Group1]= "USA - International (with dead keys)";
+
+ include "us(basic)"
+
+ // Alphanumeric section
+ key <TLDE> { [dead_grave, dead_tilde, grave, asciitilde ] };
+ key <AE01> { [ 1, exclam, exclamdown, onesuperior ] };
+ key <AE02> { [ 2, at, twosuperior, dead_doubleacute ] };
+ key <AE03> { [ 3, numbersign, threesuperior, dead_macron ] };
+ key <AE04> { [ 4, dollar, currency, sterling ] };
+ key <AE05> { [ 5, percent, EuroSign, dead_cedilla ] };
+ key <AE06> { [ 6, dead_circumflex, onequarter, asciicircum ] };
+ key <AE07> { [ 7, ampersand, onehalf, dead_horn ] };
+ key <AE08> { [ 8, asterisk, threequarters, dead_ogonek ] };
+ key <AE09> { [ 9, parenleft, leftsinglequotemark, dead_breve ] };
+ key <AE10> { [ 0, parenright, rightsinglequotemark, dead_abovering ] };
+ key <AE11> { [ minus, underscore, yen, dead_belowdot ] };
+ key <AE12> { [ equal, plus, multiply, division ] };
+
+ key <AD01> { [ q, Q, adiaeresis, Adiaeresis ] };
+ key <AD02> { [ w, W, aring, Aring ] };
+ key <AD03> { [ e, E, eacute, Eacute ] };
+ key <AD04> { [ r, R, registered, registered ] };
+ key <AD05> { [ t, T, thorn, THORN ] };
+ key <AD06> { [ y, Y, udiaeresis, Udiaeresis ] };
+ key <AD07> { [ u, U, uacute, Uacute ] };
+ key <AD08> { [ i, I, iacute, Iacute ] };
+ key <AD09> { [ o, O, oacute, Oacute ] };
+ key <AD10> { [ p, P, odiaeresis, Odiaeresis ] };
+ key <AD11> { [ bracketleft, braceleft, guillemotleft, leftdoublequotemark ] };
+ key <AD12> { [bracketright, braceright, guillemotright, rightdoublequotemark ] };
+
+ key <AC01> { [ a, A, aacute, Aacute ] };
+ key <AC02> { [ s, S, ssharp, section ] };
+ key <AC03> { [ d, D, eth, ETH ] };
+ key <AC04> { [ f, F, f, F ] };
+ key <AC05> { [ g, G, g, G ] };
+ key <AC06> { [ h, H, h, H ] };
+ key <AC07> { [ j, J, j, J ] };
+ key <AC08> { [ k, K, oe, OE ] };
+
+ key <AC09> { [ l, L, oslash, Ooblique ] };
+ key <AC10> { [ semicolon, colon, paragraph, degree ] };
+ key <AC11> { [dead_acute, dead_diaeresis, apostrophe, quotedbl ] };
+
+ key <AB01> { [ z, Z, ae, AE ] };
+ key <AB02> { [ x, X, x, X ] };
+ key <AB03> { [ c, C, copyright, cent ] };
+ key <AB04> { [ v, V, v, V ] };
+ key <AB05> { [ b, B, b, B ] };
+ key <AB06> { [ n, N, ntilde, Ntilde ] };
+ key <AB07> { [ m, M, mu, mu ] };
+ key <AB08> { [ comma, less, ccedilla, Ccedilla ] };
+ key <AB09> { [ period, greater, dead_abovedot, dead_caron ] };
+ key <AB10> { [ slash, question, questiondown, dead_hook ] };
+ key <BKSL> { [ backslash, bar, notsign, brokenbar ] };
+
+ include "level3(ralt_switch)"
+};
+
+// Based on symbols/us_intl keyboard map:
+// Dead-keys definition for a very simple US/ASCII layout.
+// by Conectiva (http://www.conectiva.com.br)
+// modified by Ricardo Y. Igarashi (iga@that.com.br)
+
+// Added the following deadkeys, to make it truly international:
+//
+// dead_macron: on AltGr-minus
+// dead_breve: on AltGr-parenleft
+// dead_abovedot: on AltGr-period
+// dead_abovering: on AltGr-0
+// dead_doubleacute: on AltGr-equal (as quotedbl is already used)
+// dead_caron: on AltGr-less (AltGr-shift-comma)
+// dead_cedilla: on AltGr-comma
+// dead_ogonek: on AltGr-semicolon
+// dead_belowdot: on AltGr-underscore (AltGr-shift-minus)
+// dead_hook: on AltGr-question
+// dead_horn: on AltGr-plus (AltGr-shift-equal)
+// dead_diaeresis: on AltGr-colon (Alt-shift-semicolon)
+//
+// those were already there:
+// dead_grave
+// dead_acute
+// dead_circumflex
+// dead_tilde
+// dead_diaeresis
+
+partial alphanumeric_keys
+xkb_symbols "alt-intl" {
+
+ name[Group1]= "USA - Alternative international";
+
+ include "us"
+
+ key <TLDE> { [ dead_grave, dead_tilde, grave, asciitilde ] };
+ key <AE05> { [ 5, percent, EuroSign ] };
+ key <AE06> { [ 6, dead_circumflex, asciicircum, asciicircum ] };
+ key <AE09> { [ 9, parenleft, leftsinglequotemark, dead_breve ] };
+ key <AE10> { [ 0, parenright, rightsinglequotemark, dead_abovering ] };
+ key <AE11> { [ minus, underscore, dead_macron, dead_belowdot ] };
+ key <AE12> { [ equal, plus, dead_doubleacute, dead_horn ] };
+
+ key <AD03> { [ e, E, EuroSign, cent ] };
+
+ key <AC10> { [ semicolon, colon, dead_ogonek, dead_diaeresis ] };
+ key <AC11> { [ dead_acute, dead_diaeresis, apostrophe, quotedbl ] };
+
+ key <AB08> { [ comma, less, dead_cedilla, dead_caron ] };
+ key <AB09> { [ period, greater, dead_abovedot, dead_circumflex ] };
+ key <AB10> { [ slash, question, dead_hook, dead_hook ] };
+
+ include "level3(ralt_switch)"
+};
+
+// based on a keyboard map from an 'xkb/symbols/dk' file
+
+partial alphanumeric_keys
+xkb_symbols "dvorak" {
+
+ name[Group1]= "USA - Dvorak";
+
+ // Alphanumeric section
+
+ key <TLDE> { [ grave, asciitilde, dead_grave, dead_tilde ] };
+
+ key <AE01> { [ 1, exclam ] };
+ key <AE02> { [ 2, at ] };
+ key <AE03> { [ 3, numbersign ] };
+ key <AE04> { [ 4, dollar ] };
+ key <AE05> { [ 5, percent ] };
+ key <AE06> { [ 6, asciicircum, dead_circumflex, dead_circumflex ] };
+ key <AE07> { [ 7, ampersand ] };
+ key <AE08> { [ 8, asterisk ] };
+ key <AE09> { [ 9, parenleft, dead_grave] };
+ key <AE10> { [ 0, parenright ] };
+ key <AE11> { [ bracketleft, braceleft ] };
+ key <AE12> { [ bracketright, braceright, dead_tilde] };
+
+ key <AD01> { [ apostrophe, quotedbl, dead_acute, dead_diaeresis ] };
+ key <AD02> { [ comma, less, dead_cedilla, dead_caron ] };
+ key <AD03> { [ period, greater, dead_abovedot, periodcentered ] };
+ key <AD04> { [ p, P ] };
+ key <AD05> { [ y, Y ] };
+ key <AD06> { [ f, F ] };
+ key <AD07> { [ g, G ] };
+ key <AD08> { [ c, C ] };
+ key <AD09> { [ r, R ] };
+ key <AD10> { [ l, L ] };
+ key <AD11> { [ slash, question ] };
+ key <AD12> { [ equal, plus ] };
+
+ key <AC01> { [ a, A ] };
+ key <AC02> { [ o, O ] };
+ key <AC03> { [ e, E ] };
+ key <AC04> { [ u, U ] };
+ key <AC05> { [ i, I ] };
+ key <AC06> { [ d, D ] };
+ key <AC07> { [ h, H ] };
+ key <AC08> { [ t, T ] };
+ key <AC09> { [ n, N ] };
+ key <AC10> { [ s, S ] };
+ key <AC11> { [ minus, underscore ] };
+
+ key <AB01> { [ semicolon, colon, dead_ogonek, dead_doubleacute ] };
+ key <AB02> { [ q, Q ] };
+ key <AB03> { [ j, J ] };
+ key <AB04> { [ k, K ] };
+ key <AB05> { [ x, X ] };
+ key <AB06> { [ b, B ] };
+ key <AB07> { [ m, M ] };
+ key <AB08> { [ w, W ] };
+ key <AB09> { [ v, V ] };
+ key <AB10> { [ z, Z ] };
+
+ key <BKSL> { [ backslash, bar ] };
+};
+
+// Dvorak international with dead keys
+// Olivier Mehani (shtrom-xorg@ssji.net)
+// Reproduce the per-key mapping of us(intl) for the dvorak layout
+// aka "I just swapped my keys over"
+partial alphanumeric_keys
+xkb_symbols "dvorak-intl" {
+
+ name[Group1]= "USA - Dvorak international (with dead keys)";
+
+ include "us(dvorak)"
+
+ key <TLDE> { [dead_grave, dead_tilde, grave, asciitilde ] };
+
+ key <AE01> { [ 1, exclam, exclamdown, onesuperior ] };
+ key <AE02> { [ 2, at, twosuperior, dead_doubleacute ] };
+ key <AE03> { [ 3, numbersign, threesuperior, dead_macron ] };
+ key <AE04> { [ 4, dollar, currency, sterling ] };
+ key <AE05> { [ 5, percent, EuroSign, dead_cedilla ] };
+ key <AE06> { [ 6, dead_circumflex, onequarter, asciicircum ] };
+ key <AE07> { [ 7, ampersand, onehalf, dead_horn ] };
+ key <AE08> { [ 8, asterisk, threequarters, dead_ogonek ] };
+ key <AE09> { [ 9, parenleft, leftsinglequotemark, dead_breve ] };
+ key <AE10> { [ 0, parenright, rightsinglequotemark, dead_abovering ] };
+ key <AE11> { [ bracketleft, braceleft, guillemotleft, leftdoublequotemark ] };
+ key <AE12> { [bracketright, braceright, guillemotright, rightdoublequotemark ] };
+
+ key <AD01> { [dead_acute, dead_diaeresis, apostrophe, quotedbl ] };
+ key <AD02> { [ comma, less, ccedilla, Ccedilla ] };
+ key <AD03> { [ period, greater, dead_abovedot, dead_caron ] };
+ key <AD04> { [ p, P, odiaeresis, Odiaeresis ] };
+ key <AD05> { [ y, Y, udiaeresis, Udiaeresis ] };
+ // key <AD06> { [ f, F ] };
+ // key <AD07> { [ g, G ] };
+ key <AD08> { [ c, C, copyright, cent ] };
+ key <AD09> { [ r, R, registered, registered ] };
+ key <AD10> { [ l, L, oslash, Ooblique ] };
+ key <AD11> { [ slash, question, questiondown, dead_hook ] };
+ // key <AD12> { [ equal, plus, multiply, division ] };
+
+ key <AC01> { [ a, A, aacute, Aacute ] };
+ key <AC02> { [ o, O, oacute, Oacute ] };
+ key <AC03> { [ e, E, eacute, Eacute ] };
+ key <AC04> { [ u, U, uacute, Uacute ] };
+ key <AC05> { [ i, I, iacute, Iacute ] };
+ key <AC06> { [ d, D, eth, ETH ] };
+ // key <AC07> { [ h, H ] };
+ key <AC08> { [ t, T, thorn, THORN ] };
+ key <AC09> { [ n, N, ntilde, Ntilde ] };
+ key <AC10> { [ s, S, ssharp, section ] };
+ // key <AC11> { [ minus, underscore, yen, dead_belowdot ] };
+
+ key <AB01> { [ semicolon, colon, paragraph, degree ] };
+ key <AB02> { [ q, Q, adiaeresis, Adiaeresis ] };
+ // key <AB03> { [ j, J ] };
+ key <AB04> { [ k, K, oe, OE ] };
+ // key <AB05> { [ x, X ] };
+ // key <AB06> { [ b, B ] };
+ key <AB07> { [ m, M, mu, mu ] };
+ key <AB08> { [ w, W, aring, Aring ] };
+ // key <AB09> { [ v, V ] };
+ key <AB10> { [ z, Z, ae, AE ] };
+
+ key <BKSL> { [ backslash, bar, notsign, brokenbar ] };
+
+ include "level3(ralt_switch)"
+};
+
+// Dvorak international without dead keys
+// Stephane Magnenat (stephane at magnenat dot net, http://stephane.magnenat.net)
+// Based on information from http://www.poupinou.org/dvorak/index.html
+//
+// ` 1 2 3 4 5 6 7 8 9 0 [ ] \
+// €
+//
+// ' , . p y f g c r l / =
+// ä ê ë ü ç
+//
+// a o e u i d h t n s -
+// à ô é û î ß
+//
+// ; q j k x b m w v z
+// â ö è ù ï
+
+partial alphanumeric_keys
+xkb_symbols "dvorak-alt-intl" {
+
+ name[Group1]= "USA - Dvorak alternative international (no dead keys)";
+
+ include "us(dvorak)"
+
+ key <AE04> { [ 4, dollar, EuroSign ] };
+
+ key <AD02> { [ comma, less, adiaeresis, dead_caron ] };
+ key <AD03> { [ period, greater, ecircumflex, periodcentered ] };
+ key <AD04> { [ p, P, ediaeresis, dead_cedilla ] };
+ key <AD05> { [ y, Y, udiaeresis ] };
+ key <AD08> { [ c, C, ccedilla, dead_abovedot ] };
+
+ key <AC01> { [ a, A, agrave ] };
+ key <AC02> { [ o, O, ocircumflex ] };
+ key <AC03> { [ e, E, eacute ] };
+ key <AC04> { [ u, U, ucircumflex ] };
+ key <AC05> { [ i, I, icircumflex ] };
+ key <AC10> { [ s, S, ssharp ] };
+
+ key <AB01> { [ semicolon, colon, acircumflex ] };
+ key <AB02> { [ q, Q, odiaeresis, dead_ogonek ] };
+ key <AB03> { [ j, J, egrave, dead_doubleacute ] };
+ key <AB04> { [ k, K, ugrave ] };
+ key <AB05> { [ x, X, idiaeresis ] };
+
+ include "level3(ralt_switch)"
+};
+
+// Left and right handed dvorak layouts
+// by sqweek <sqweek@gmail.com> 2006-01-30
+// Based on the corresponding layouts in the console-tools package.
+partial alphanumeric_keys
+xkb_symbols "dvorak-l" {
+
+ include "us(dvorak)"
+ name[Group1]= "USA - Left handed Dvorak";
+
+ key <AE01> { [ bracketleft, braceleft ] };
+ key <AE02> { [ bracketright, braceright ] };
+ key <AE03> { [ slash, question ] };
+ key <AE04> { [ p, P ] };
+ key <AE05> { [ f, F ] };
+ key <AE06> { [ m, M ] };
+ key <AE07> { [ l, L ] };
+ key <AE08> { [ j, J ] };
+ key <AE09> { [ 4, dollar ] };
+ key <AE10> { [ 3, numbersign ] };
+ key <AE11> { [ 2, at ] };
+ key <AE12> { [ 1, exclam ] };
+
+ key <AD01> { [ semicolon, colon ] };
+ key <AD02> { [ q, Q ] };
+ key <AD03> { [ b, B ] };
+ key <AD04> { [ y, Y ] };
+ key <AD05> { [ u, U ] };
+ key <AD06> { [ r, R ] };
+ key <AD07> { [ s, S ] };
+ key <AD08> { [ o, O ] };
+ key <AD09> { [ period, greater ] };
+ key <AD10> { [ 6, asciicircum ] };
+ key <AD11> { [ 5, percent ] };
+ key <AD12> { [ equal, plus ] };
+
+ key <AC01> { [ minus, underscore ] };
+ key <AC02> { [ k, K ] };
+ key <AC03> { [ c, C ] };
+ key <AC04> { [ d, D ] };
+ key <AC05> { [ t, T ] };
+ key <AC06> { [ h, H ] };
+ key <AC07> { [ e, E ] };
+ key <AC08> { [ a, A ] };
+ key <AC09> { [ z, Z ] };
+ key <AC10> { [ 8, asterisk ] };
+ key <AC11> { [ 7, ampersand ] };
+
+ key <AB01> { [ apostrophe, quotedbl ] };
+ key <AB02> { [ x, X ] };
+ key <AB03> { [ g, G ] };
+ key <AB04> { [ v, V ] };
+ key <AB05> { [ w, W ] };
+ key <AB06> { [ n, N ] };
+ key <AB07> { [ i, I ] };
+ key <AB08> { [ comma, less ] };
+ key <AB09> { [ 0, parenright ] };
+ key <AB10> { [ 9, parenleft ] };
+};
+
+partial alphanumeric_keys
+xkb_symbols "dvorak-r" {
+
+ include "us(dvorak)"
+ name[Group1]= "USA - Right handed Dvorak";
+
+ key <AE01> { [ 1, exclam ] };
+ key <AE02> { [ 2, at ] };
+ key <AE03> { [ 3, numbersign ] };
+ key <AE04> { [ 4, dollar ] };
+ key <AE05> { [ j, J ] };
+ key <AE06> { [ l, L ] };
+ key <AE07> { [ m, M ] };
+ key <AE08> { [ f, F ] };
+ key <AE09> { [ p, P ] };
+ key <AE10> { [ slash, question ] };
+ key <AE11> { [ bracketleft, braceleft ] };
+ key <AE12> { [ bracketright, braceright ] };
+
+ key <AD01> { [ 5, percent ] };
+ key <AD02> { [ 6, asciicircum ] };
+ key <AD03> { [ q, Q ] };
+ key <AD04> { [ period, greater ] };
+ key <AD05> { [ o, O ] };
+ key <AD06> { [ r, R ] };
+ key <AD07> { [ s, S ] };
+ key <AD08> { [ u, U ] };
+ key <AD09> { [ y, Y ] };
+ key <AD10> { [ b, B ] };
+ key <AD11> { [ semicolon, colon ] };
+ key <AD12> { [ equal, plus ] };
+
+ key <AC01> { [ 7, ampersand ] };
+ key <AC02> { [ 8, asterisk ] };
+ key <AC03> { [ z, Z ] };
+ key <AC04> { [ a, A ] };
+ key <AC05> { [ e, E ] };
+ key <AC06> { [ h, H ] };
+ key <AC07> { [ t, T ] };
+ key <AC08> { [ d, D ] };
+ key <AC09> { [ c, C ] };
+ key <AC10> { [ k, K ] };
+ key <AC11> { [ minus, underscore ] };
+
+ key <AB01> { [ 9, parenleft ] };
+ key <AB02> { [ 0, parenright ] };
+ key <AB03> { [ x, X ] };
+ key <AB04> { [ comma, less ] };
+ key <AB05> { [ i, I ] };
+ key <AB06> { [ n, N ] };
+ key <AB07> { [ w, W ] };
+ key <AB08> { [ v, V ] };
+ key <AB09> { [ g, G ] };
+ key <AB10> { [ apostrophe, quotedbl ] };
+};
+
+// Classic dvorak layout
+// by Piter Punk <piterpk@terra.com.br> - 2006-07-06
+// Based on dvorak layout and e-mail from Russel L. Harris rlharris@oplink.net
+// on xorg list.
+partial alphanumeric_keys
+xkb_symbols "dvorak-classic" {
+
+ name[Group1]= "USA - Classic Dvorak";
+
+ // Alphanumeric section
+
+ key <TLDE> { [ grave, asciitilde, dead_grave, dead_tilde ] };
+
+ key <AE01> { [ bracketleft, braceleft ] };
+ key <AE02> { [ 7, ampersand ] };
+ key <AE03> { [ 5, percent ] };
+ key <AE04> { [ 3, numbersign ] };
+ key <AE05> { [ 1, exclam ] };
+ key <AE06> { [ 9, parenleft, dead_grave] };
+ key <AE07> { [ 0, parenright ] };
+ key <AE08> { [ 2, at ] };
+ key <AE09> { [ 4, dollar ] };
+ key <AE10> { [ 6, asciicircum, dead_circumflex, dead_circumflex ] };
+ key <AE11> { [ 8, asterisk ] };
+ key <AE12> { [ bracketright, braceright, dead_tilde] };
+
+ key <AD01> { [ slash, question ] };
+ key <AD02> { [ comma, less, dead_cedilla, dead_caron ] };
+ key <AD03> { [ period, greater, dead_abovedot, periodcentered ] };
+ key <AD04> { [ p, P ] };
+ key <AD05> { [ y, Y ] };
+ key <AD06> { [ f, F ] };
+ key <AD07> { [ g, G ] };
+ key <AD08> { [ c, C ] };
+ key <AD09> { [ r, R ] };
+ key <AD10> { [ l, L ] };
+ key <AD11> { [ apostrophe, quotedbl, dead_acute, dead_diaeresis ] };
+ key <AD12> { [ equal, plus ] };
+
+ key <AC01> { [ a, A ] };
+ key <AC02> { [ o, O ] };
+ key <AC03> { [ e, E ] };
+ key <AC04> { [ u, U ] };
+ key <AC05> { [ i, I ] };
+ key <AC06> { [ d, D ] };
+ key <AC07> { [ h, H ] };
+ key <AC08> { [ t, T ] };
+ key <AC09> { [ n, N ] };
+ key <AC10> { [ s, S ] };
+ key <AC11> { [ minus, underscore ] };
+
+ key <AB01> { [ semicolon, colon, dead_ogonek, dead_doubleacute ] };
+ key <AB02> { [ q, Q ] };
+ key <AB03> { [ j, J ] };
+ key <AB04> { [ k, K ] };
+ key <AB05> { [ x, X ] };
+ key <AB06> { [ b, B ] };
+ key <AB07> { [ m, M ] };
+ key <AB08> { [ w, W ] };
+ key <AB09> { [ v, V ] };
+ key <AB10> { [ z, Z ] };
+ key <BKSL> { [ backslash, bar ] };
+};
+
+// Programmer Dvorak, by Roland Kaufmann <rlndkfmn at gmail dot com>
+// License: BSD, available at <http://www.kaufmann.no/roland/dvorak/license.html>
+// Main features: Numbers are in shift position (like French), symbols have been
+// placed in locations that give good hand-alternation and finger rolling with
+// symbols that usually follows, accented characters are possible for I18N.
+partial alphanumeric_keys
+xkb_symbols "dvp" {
+ include "us(dvorak)"
+
+ name[Group1] = "USA - Programmer Dvorak";
+
+ // Unmodified Shift AltGr Shift+AltGr
+ // symbols row, left side
+ key <TLDE> { [ dollar, asciitilde, dead_tilde ] };
+ key <AE01> { [ ampersand, percent ] };
+ key <AE02> { [ bracketleft, 7, currency ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE03> { [ braceleft, 5, cent ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE04> { [ braceright, 3, yen ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE05> { [ parenleft, 1, EuroSign ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE06> { [ equal, 9, sterling ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+
+ // symbols row, right side
+ key <AE07> { [ asterisk, 0 ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE08> { [ parenright, 2, onehalf ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE09> { [ plus, 4 ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE10> { [ bracketright, 6 ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE11> { [ exclam, 8, exclamdown ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <AE12> { [ numbersign, grave, dead_grave ] };
+ key <BKSP> { [ BackSpace ] };
+
+ // upper row, left side
+ key <AD01> { [ semicolon, colon, dead_diaeresis ] };
+ key <AD02> { [ comma, less, guillemotleft ] };
+ key <AD03> { [ period, greater, guillemotright ] };
+ key <AD04> { [ p, P, paragraph, section ] };
+ key <AD05> { [ y, Y, udiaeresis, Udiaeresis ] };
+
+ // upper row, right side
+ key <AD08> { [ c, C, ccedilla, Ccedilla ] };
+ key <AD09> { [ r, R, registered, trademark ] };
+ key <AD11> { [ slash, question, questiondown ] };
+ key <AD12> { [ at, asciicircum, dead_circumflex, dead_caron ] };
+
+ // home row, left side
+ key <AC01> { [ a, A, aring, Aring ] };
+ key <AC02> { [ o, O, oslash, Ooblique ] };
+ key <AC03> { [ e, E, ae, AE ] };
+ key <AC04> { [ u, U, eacute, Eacute ] };
+
+ // home row, right side
+ key <AC06> { [ d, D, eth, ETH ] };
+ key <AC07> { [ h, H, dead_acute ] };
+ key <AC08> { [ t, T, thorn, THORN ] };
+ key <AC09> { [ n, N, ntilde, Ntilde ] };
+ key <AC10> { [ s, S, ssharp ] };
+ key <AC11> { [ minus, underscore, hyphen ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
+ key <BKSL> { [ backslash, bar ] };
+
+ // lower row, left side
+ key <AB01> { [ apostrophe, quotedbl, dead_acute ] };
+};
+
+// phonetic layout for Russian letters on an US keyboard
+// by Ivan Popov <pin@konvalo.org> 2005-07-17
+
+// level3 modifier is a shortcut to the "us" meaning of the keys where
+// we place cyrillic letters, handy for accessing the corresponding
+// punctuation marks.
+// It is important to have access to punctuation marks, and the rest of
+// alphabetical keys are added for being consequent so that the users
+// can expect the level3 modifier to give what the key label shows.
+
+partial alphanumeric_keys
+xkb_symbols "rus" {
+
+ name[Group1]= "USA - Russian phonetic";
+
+ include "us(basic)"
+
+key.type[group1]="FOUR_LEVEL_ALPHABETIC";
+
+ key <LatA> { [ Cyrillic_a, Cyrillic_A ] };
+ key <LatB> { [ Cyrillic_be, Cyrillic_BE ] };
+ key <LatW> { [ Cyrillic_ve, Cyrillic_VE ] };
+ key <LatG> { [ Cyrillic_ghe, Cyrillic_GHE ] };
+ key <LatD> { [ Cyrillic_de, Cyrillic_DE ] };
+ key <LatE> { [ Cyrillic_ie, Cyrillic_IE ] };
+ key <TLDE> { [ Cyrillic_io, Cyrillic_IO, grave, asciitilde ] };
+ key <LatV> { [ Cyrillic_zhe, Cyrillic_ZHE ] };
+ key <LatZ> { [ Cyrillic_ze, Cyrillic_ZE ] };
+ key <LatI> { [ Cyrillic_i, Cyrillic_I ] };
+ key <LatJ> { [ Cyrillic_shorti, Cyrillic_SHORTI ] };
+ key <LatK> { [ Cyrillic_ka, Cyrillic_KA ] };
+ key <LatL> { [ Cyrillic_el, Cyrillic_EL ] };
+ key <LatM> { [ Cyrillic_em, Cyrillic_EM ] };
+ key <LatN> { [ Cyrillic_en, Cyrillic_EN ] };
+ key <LatO> { [ Cyrillic_o, Cyrillic_O ] };
+ key <LatP> { [ Cyrillic_pe, Cyrillic_PE ] };
+ key <LatR> { [ Cyrillic_er, Cyrillic_ER ] };
+ key <LatS> { [ Cyrillic_es, Cyrillic_ES ] };
+ key <LatT> { [ Cyrillic_te, Cyrillic_TE ] };
+ key <LatU> { [ Cyrillic_u, Cyrillic_U ] };
+ key <LatF> { [ Cyrillic_ef, Cyrillic_EF ] };
+ key <LatH> { [ Cyrillic_ha, Cyrillic_HA ] };
+ key <LatC> { [ Cyrillic_tse, Cyrillic_TSE ] };
+ key <AC10> { [ Cyrillic_che, Cyrillic_CHE, semicolon, colon ] };
+ key <AD11> { [ Cyrillic_sha, Cyrillic_SHA, bracketleft, braceleft] };
+ key <AD12> { [ Cyrillic_shcha, Cyrillic_SHCHA, bracketright, braceright ] };
+ key <AE12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, equal, plus ] };
+ key <LatY> { [ Cyrillic_yeru, Cyrillic_YERU ] };
+ key <LatX> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN ] };
+ key <BKSL> { [ Cyrillic_e, Cyrillic_E, backslash, bar ] };
+ key <AC11> { [ Cyrillic_yu, Cyrillic_YU, apostrophe, quotedbl ] };
+ key <LatQ> { [ Cyrillic_ya, Cyrillic_YA ] };
+
+ include "level3(ralt_switch)"
+};
+
+partial alphanumeric_keys
+xkb_symbols "mac" {
+
+ include "us(basic)"
+ name[Group1]= "USA - Macintosh";
+ key.type[group1]="FOUR_LEVEL";
+
+ // Slightly improvised from http://homepage.mac.com/thgewecke/kblayout.jpg
+ key <LSGT> { [ section, plusminus, section, plusminus ] };
+ key <TLDE> { [ grave, asciitilde, dead_grave, dead_horn ] };
+ key <AE01> { [ 1, exclam, exclamdown, U2044 ] };
+ key <AE02> { [ 2, at, trademark, EuroSign ] };
+ key <AE03> { [ 3, numbersign, sterling, U2039 ] };
+ key <AE04> { [ 4, dollar, cent, U203A ] };
+ key <AE05> { [ 5, percent, infinity, UFB01 ] };
+ key <AE06> { [ 6,asciicircum, section, UFB02 ] };
+ key <AE07> { [ 7, ampersand, paragraph, doubledagger ] };
+ key <AE08> { [ 8, asterisk, enfilledcircbullet, degree ] };
+ key <AE09> { [ 9, parenleft, ordfeminine, periodcentered ] };
+ key <AE10> { [ 0, parenright, masculine,singlelowquotemark] };
+ key <AE11> { [ minus, underscore, endash, emdash ] };
+ key <AE12> { [ equal, plus, notequal, plusminus ] };
+
+ key <AD01> { [ q, Q, oe, OE ] };
+ key <AD02> { [ w, W, U2211,doublelowquotemark] };
+ key <AD03> { [ e, E, dead_acute, acute ] };
+ key <AD04> { [ r, R, registered, U2030 ] };
+ key <AD05> { [ t, T, dagger, dead_caron ] };
+ key <AD06> { [ y, Y, yen, onequarter ] };
+ key <AD07> { [ u, U, dead_diaeresis, diaeresis ] };
+ key <AD08> { [ i, I, dead_circumflex, U02C6 ] };
+ key <AD09> { [ o, O, oslash, Ooblique ] };
+ key <AD10> { [ p, P, Greek_pi, U220F ] };
+ key <AD11> { [ bracketleft, braceleft, leftdoublequotemark, rightdoublequotemark ] };
+ key <AD12> { [bracketright, braceright, leftsinglequotemark, rightsinglequotemark ] };
+ key <BKSL> { [ backslash, bar, guillemotleft, guillemotright ] };
+
+ key <AC01> { [ a, A, aring, Aring ] };
+ key <AC02> { [ s, S, ssharp, dead_stroke ] };
+ key <AC03> { [ d, D, partialderivative, eth ] };
+ key <AC04> { [ f, F, function, dead_hook ] };
+ key <AC05> { [ g, G, copyright, dead_doubleacute ] };
+ key <AC06> { [ h, H, dead_abovedot, dead_belowdot ] };
+ key <AC07> { [ j, J, U2206, onehalf ] };
+ key <AC08> { [ k, K,dead_abovering, UF8FF ] };
+
+ key <AC09> { [ l, L, notsign, THORN ] };
+ key <AC10> { [ semicolon, colon, U2026, thorn ] };
+ key <AC11> { [apostrophe, quotedbl, ae, AE ] };
+
+ key <AB01> { [ z, Z, Greek_OMEGA, dead_cedilla ] };
+ key <AB02> { [ x, X, U2248, dead_ogonek ] };
+ // unclear whether "approxeq" is 2248 or 2245
+ key <AB03> { [ c, C, ccedilla, Ccedilla ] };
+ key <AB04> { [ v, V, squareroot, U25CA ] };
+ key <AB05> { [ b, B, integral, idotless ] };
+ key <AB06> { [ n, N, dead_tilde, U02DC ] };
+ key <AB07> { [ m, M, mu, threequarters ] };
+ key <AB08> { [ comma, less, lessthanequal, dead_macron ] };
+ key <AB09> { [ period, greater, greaterthanequal, dead_breve ] };
+ key <AB10> { [ slash, question, division, questiondown ] };
+
+ include "level3(ralt_switch)"
+};
+
+// Colemak symbols for xkb on X.Org Server 7.x
+// 2006-01-01 Shai Coleman, http://colemak.com/ . Public domain.
+
+partial alphanumeric_keys
+xkb_symbols "colemak" {
+ include "us"
+ name[Group1]= "USA - Colemak";
+
+ // Alphanumeric section
+ key <TLDE> { [ grave, asciitilde, dead_tilde, asciitilde ] };
+ key <AE01> { [ 1, exclam, exclamdown, onesuperior ] };
+ key <AE02> { [ 2, at, masculine, twosuperior ] };
+ key <AE03> { [ 3, numbersign, ordfeminine, threesuperior ] };
+ key <AE04> { [ 4, dollar, cent, sterling ] };
+ key <AE05> { [ 5, percent, EuroSign, yen ] };
+ key <AE06> { [ 6, asciicircum, hstroke, Hstroke ] };
+ key <AE07> { [ 7, ampersand, eth, ETH ] };
+ key <AE08> { [ 8, asterisk, thorn, THORN ] };
+ key <AE09> { [ 9, parenleft, leftsinglequotemark, leftdoublequotemark ] };
+ key <AE10> { [ 0, parenright, rightsinglequotemark, rightdoublequotemark ] };
+ key <AE11> { [ minus, underscore, endash, emdash ] };
+ key <AE12> { [ equal, plus, multiply, division ] };
+
+ key <AD01> { [ q, Q, adiaeresis, Adiaeresis ] };
+ key <AD02> { [ w, W, aring, Aring ] };
+ key <AD03> { [ f, F, atilde, Atilde ] };
+ key <AD04> { [ p, P, oslash, Ooblique ] };
+ key <AD05> { [ g, G, dead_ogonek, asciitilde ] };
+ key <AD06> { [ j, J, dstroke, Dstroke ] };
+ key <AD07> { [ l, L, lstroke, Lstroke ] };
+ key <AD08> { [ u, U, uacute, Uacute ] };
+ key <AD09> { [ y, Y, udiaeresis, Udiaeresis ] };
+ key <AD10> { [ semicolon, colon, odiaeresis, Odiaeresis ] };
+ key <AD11> { [ bracketleft, braceleft, guillemotleft, 0x1002039 ] };
+ key <AD12> { [ bracketright, braceright, guillemotright, 0x100203a ] };
+ key <BKSL> { [ backslash, bar, asciitilde, asciitilde ] };
+
+ key <AC01> { [ a, A, aacute, Aacute ] };
+ key <AC02> { [ r, R, dead_grave, asciitilde ] };
+ key <AC03> { [ s, S, ssharp, asciitilde ] };
+ key <AC04> { [ t, T, dead_acute, dead_doubleacute ] };
+ key <AC05> { [ d, D, dead_diaeresis, asciitilde ] };
+ key <AC06> { [ h, H, dead_caron, asciitilde ] };
+ key <AC07> { [ n, N, ntilde, Ntilde ] };
+ key <AC08> { [ e, E, eacute, Eacute ] };
+ key <AC09> { [ i, I, iacute, Iacute ] };
+ key <AC10> { [ o, O, oacute, Oacute ] };
+ key <AC11> { [ apostrophe, quotedbl, otilde, Otilde ] };
+
+ key <AB01> { [ z, Z, ae, AE ] };
+ key <AB02> { [ x, X, dead_circumflex, asciitilde ] };
+ key <AB03> { [ c, C, ccedilla, Ccedilla ] };
+ key <AB04> { [ v, V, oe, OE ] };
+ key <AB05> { [ b, B, dead_breve, asciitilde ] };
+ key <AB06> { [ k, K, dead_abovering, asciitilde ] };
+ key <AB07> { [ m, M, dead_macron, asciitilde ] };
+ key <AB08> { [ comma, less, dead_cedilla, asciitilde ] };
+ key <AB09> { [ period, greater, dead_abovedot, asciitilde ] };
+ key <AB10> { [ slash, question, questiondown, asciitilde ] };
+
+ key <CAPS> { [ BackSpace, BackSpace, BackSpace, BackSpace ] };
+ key <LSGT> { [ minus, underscore, endash, emdash ] };
+ key <SPCE> { [ space, space, space, nobreakspace ] };
+
+ include "level3(ralt_switch)"
+};
+
+// I do NOT like dead-keys - the International keyboard as defined by Microsoft
+// doesn't fit my needs. Why use two keystrokes for all simple characters (eg '
+// and <space> generates a single ') just to have an é (eacute) in two strokes
+// as well? I type ' more often than é (eacute).
+//
+// This file works just like a regular keyboard, BUT has all dead-keys
+// accessible at level3 (through AltGr). An ë (ediaeresis) is now: AltGr+"
+// followed by an e. In other words, this keyboard is not international as long
+// as you leave the right Alt key alone.
+//
+// The original MS International keyboard was intended for Latin1 (iso8859-1).
+// With the introduction of iso8859-15, the (important) ligature oe (and OE)
+// became available. I added them next to ae. Because I write ediaeresis more
+// often than registered, I moved registered to be next to copyright and added
+// ediaeresis and idiaeresis. - Adriaan
+
+partial alphanumeric_keys
+xkb_symbols "altgr-intl" {
+
+ name[Group1]= "USA - International (AltGr dead keys)";
+
+ include "us(intl)"
+
+// five dead keys moved into level3:
+
+ key <TLDE> { [ grave, asciitilde, dead_grave, dead_tilde ] };
+ key <AC11> { [apostrophe,quotedbl, dead_acute, dead_diaeresis ] };
+
+// diversions from the MS Intl keyboard:
+
+ key <AE01> { [ 1, exclam, onesuperior, exclamdown ] };
+ key <AD04> { [ r, R, ediaeresis, Ediaeresis ] };
+ key <AC07> { [ j, J, idiaeresis, Idiaeresis ] };
+ key <AB02> { [ x, X, oe, OE ] };
+ key <AB04> { [ v, V, registered, registered ] };
+
+// onequarter etc (not in iso8859-15) moved to get three unshifted deadkeys:
+
+ key <AE06> { [ 6, asciicircum, dead_circumflex, onequarter ] };
+ key <AE07> { [ 7, ampersand, dead_horn, onehalf ] };
+ key <AE08> { [ 8, asterisk, dead_ogonek, threequarters ] };
+
+ include "level3(ralt_switch)"
+};
+
+// Intel ClassmatePC Keyboard Layout
+// by Piter PUNK <piterpk@terra.com.br>
+//
+// The keyboard layouts below maps the us(basic), us(intl) and us(alt-intl)
+// to ClassmatePC keyboard. All layouts uses RCTL as level3(switch) since
+// the keyboard doesn't have AltGr key. The EuroSign is engraved at 5 key.
+
+// classmate - us(basic)
+partial alphanumeric_keys
+xkb_symbols "classmate" {
+ include "us(basic)"
+ name[Group1]= "USA - ClassmatePC";
+
+ key <LSGT> { [ backslash, bar, backslash, bar ] };
+
+ include "eurosign(5)"
+ include "level3(switch)"
+};
+
+// classmate-intl - us(intl)
+// RCTL is generated by Fn+Alt, because that, when trying to access
+// the level3 symbols at 7,8,9,0,u,i,o,p,j,k,l,;,m,. and / we got
+// the keypad keycodes. The keypad is changed to make Fn+Alt+<KP_key>
+// generate the same symbol as the original key.
+partial alphanumeric_keys
+xkb_symbols "classmate-intl" {
+ include "us(intl)"
+ name[Group1]= "USA - ClassmatePC (International)";
+ key.type[Group1]="FOUR_LEVEL";
+
+ key <LSGT> { [ backslash, bar, backslash, bar ] };
+
+ key <KP7> { [ KP_Home, KP_7,
+ onehalf, dead_horn ] };
+ key <KP8> { [ KP_Up, KP_8,
+ threequarters, dead_ogonek ] };
+ key <KP9> { [ KP_Prior, KP_9,
+ leftsinglequotemark, dead_breve ] };
+ key <KPMU> { [ KP_Multiply, KP_Multiply,
+ rightsinglequotemark, dead_abovering ] };
+
+ key <KP4> { [ KP_Left, KP_4,
+ uacute, Uacute ] };
+ key <KP5> { [ KP_Begin, KP_5,
+ iacute, Iacute ] };
+ key <KP6> { [ KP_Right, KP_6,
+ oacute, Oacute ] };
+ key <KPSU> { [ KP_Subtract, KP_Subtract,
+ odiaeresis, Odiaeresis ] };
+
+ key <KP2> { [ KP_Down, KP_2,
+ oe, OE ] };
+ key <KP3> { [ KP_Next, KP_3,
+ oslash, Ooblique ] };
+ key <KPAD> { [ KP_Add, KP_Add,
+ paragraph, degree ] };
+
+ key <KP0> { [ KP_Insert, KP_0,
+ mu, mu ] };
+ key <KPDL> { [ KP_Delete, KP_Decimal,
+ dead_abovedot, dead_caron ] };
+ key <KPDV> { [ KP_Divide, KP_Divide,
+ questiondown, dead_hook ] };
+
+ include "level3(switch)"
+};
+
+// classmate-alt-intl - us(alt-intl)
+// RCTL is generated by Fn+Alt, because that, when trying to access
+// the level3 symbols at 7,8,9,0,u,i,o,p,j,k,l,;,m,. and / we got
+// the keypad keycodes. The keypad is changed to make Fn+Alt+<KP_key>
+// generate the same symbol as the original key.
+partial alphanumeric_keys
+xkb_symbols "classmate-alt-intl" {
+ include "us(alt-intl)"
+ name[Group1]= "USA - ClassmatePC (Alternative international)";
+ key.type[Group1]="FOUR_LEVEL";
+
+ key <LSGT> { [ backslash, bar, backslash, bar ] };
+
+ key <KPSU> { [ KP_Subtract, KP_Subtract ] };
+
+ key <KP9> { [ KP_Prior, KP_9,
+ leftsinglequotemark, dead_breve ] };
+ key <KPMU> { [ KP_Multiply, KP_Multiply,
+ rightsinglequotemark, dead_abovering ] };
+
+ key <KPAD> { [ KP_Add, KP_Add,
+ dead_ogonek, dead_diaeresis ] };
+
+ key <KPDL> { [ KP_Delete, KP_Decimal,
+ dead_abovedot, dead_circumflex ] };
+ key <KPDV> { [ KP_Divide, KP_Divide,
+ dead_hook, dead_hook ] };
+
+ include "level3(switch)"
+};
+
+// classmate-altgr-intl - us(altgr-intl)
+// RCTL is generated by Fn+Alt, because that, when trying to access
+// the level3 symbols at 7,8,9,0,u,i,o,p,j,k,l,;,m,. and / we got
+// the keypad keycodes. The keypad is changed to make Fn+Alt+<KP_key>
+// generate the same symbol as the original key.
+partial alphanumeric_keys
+xkb_symbols "classmate-altgr-intl" {
+ include "us(altgr-intl)"
+ name[Group1]= "USA - ClassmatePC (International Fn+Alt dead-keys)";
+ key.type[Group1]="FOUR_LEVEL";
+
+ key <LSGT> { [ backslash, bar, backslash, bar ] };
+
+ key <KP7> { [ KP_Home, KP_7,
+ dead_horn, dead_horn ] };
+ key <KP8> { [ KP_Up, KP_8,
+ dead_ogonek, dead_ogonek ] };
+ key <KP9> { [ KP_Prior, KP_9,
+ leftsinglequotemark, dead_breve ] };
+ key <KPMU> { [ KP_Multiply, KP_Multiply,
+ rightsinglequotemark, dead_abovering ] };
+
+ key <KP4> { [ KP_Left, KP_4,
+ uacute, Uacute ] };
+ key <KP5> { [ KP_Begin, KP_5,
+ iacute, Iacute ] };
+ key <KP6> { [ KP_Right, KP_6,
+ oacute, Oacute ] };
+ key <KPSU> { [ KP_Subtract, KP_Subtract,
+ odiaeresis, Odiaeresis ] };
+
+ key <KP1> { [ KP_End, KP_1,
+ idiaeresis, Idiaeresis ] };
+ key <KP2> { [ KP_Down, KP_2,
+ oe, OE ] };
+ key <KP3> { [ KP_Next, KP_3,
+ oslash, Ooblique ] };
+ key <KPAD> { [ KP_Add, KP_Add,
+ paragraph, degree ] };
+
+ key <KP0> { [ KP_Insert, KP_0,
+ mu, mu ] };
+ key <KPDL> { [ KP_Delete, KP_Decimal,
+ dead_abovedot, dead_caron ] };
+ key <KPDV> { [ KP_Divide, KP_Divide,
+ questiondown, dead_hook ] };
+
+ include "level3(switch)"
+};
+
+partial alphanumeric_keys
+xkb_symbols "olpc" {
+
+ include "us(basic)"
+ name[Group1]= "USA";
+
+ // OLPC international US English keyboard layout.
+ // It's a little different from the usual international layout.
+ // See: http://wiki.laptop.org/go/Image:Keyboard_english.png
+
+ key <TLDE> { [ grave, asciitilde, dead_grave, dead_tilde ] };
+ key <AE01> { [ 1, exclam, exclamdown, exclamdown ] };
+ key <AE02> { [ 2, at, notsign, notsign ] };
+ key <AE03> { [ 3, numbersign, 0x1000300, 0x1000300 ] }; // combining grave
+ key <AE04> { [ 4, dollar, 0x1000301, 0x1000301 ] }; // combining acute
+ key <AE05> { [ 5, percent, 0x1000306, 0x1000306 ] }; // combining breve above
+ key <AE06> { [ 6,asciicircum, 0x100030A, 0x100030A ] }; // combining ring above
+ key <AE07> { [ 7, ampersand, 0x1000302, 0x1000302 ] }; // combining circumflex above
+ key <AE08> { [ 8, asterisk, 0x100030C, 0x100030C ] }; // combining caron above
+ key <AE09> { [ 9, parenleft, 0x1000307, 0x1000307 ] }; // combining dot above
+ key <AE10> { [ 0, parenright, 0x1000308, 0x1000308 ] }; // combining diaeresis above
+ key <AE11> { [ minus, underscore, 0x1000304, 0x1000304 ] }; // combining macron above
+ key <AE12> { [ equal, plus, 0x1000303, 0x1000303 ] }; // combining tilde above
+
+ key <AD01> { [ q, Q, Greek_omega, Greek_OMEGA ] };
+ key <AD02> { [ w, W, oslash, Oslash ] };
+ key <AD03> { [ e, E, oe, OE ] };
+ key <AD04> { [ r, R, 0x1000327, 0x1000327 ] }; // combining cedilla
+ key <AD05> { [ t, T, 0x100032E, 0x100032E ] }; // combining breve below
+ key <AD06> { [ y, Y, 0x1000325, 0x1000325 ] }; // combining ring below
+ key <AD07> { [ u, U, 0x100032D, 0x100032D ] }; // combining circumflex below
+ key <AD08> { [ i, I, 0x100032C, 0x100032C ] }; // combining caron below
+ key <AD09> { [ o, O, 0x1000323, 0x1000323 ] }; // combining dot below
+ key <AD10> { [ p, P, 0x1000324, 0x1000324 ] }; // combining diaeresis below
+ key <AD11> { [ bracketleft, braceleft, 0x1000331, 0x1000331 ] }; // combining macron below
+ key <AD12> { [bracketright, braceright, 0x1000330, 0x1000330 ] }; // combining tilde below
+
+ key <AC01> { [ a, A, ae, AE ] };
+ key <AC02> { [ s, S, ssharp, 0x1001E9C ] }; // uppercase S sharp
+ key <AC03> { [ d, D, eth, ETH ] };
+ key <AC04> { [ f, F, thorn, THORN ] };
+ key <AC06> { [ h, H, sterling, sterling ] };
+ key <AC07> { [ j, J, EuroSign, EuroSign ] };
+ key <AC10> { [ semicolon, colon, masculine, ordfeminine ] };
+ key <AC11> { [ apostrophe, quotedbl, currency, currency ] };
+ key <BKSL> { [ backslash, bar, section, section ] };
+
+ key <AB03> { [ c, C, ccedilla, Ccedilla ] };
+ key <AB06> { [ n, N, ntilde, Ntilde ] };
+ key <AB07> { [ m, M, mu, mu ] };
+ key <AB08> { [ comma, less, guillemotleft, guillemotleft ] };
+ key <AB09> { [ period, greater, guillemotright, guillemotright ] };
+ key <AB10> { [ slash, question, questiondown, questiondown ] };
+
+ key <I219> { [ multiply, division, ISO_Next_Group, ISO_Prev_Group ] };
+
+ include "level3(ralt_switch)"
+};
+
+partial alphanumeric_keys
+xkb_symbols "olpc2" {
+ include "us(olpc)"
+ name[Group1]= "USA - Layout toggle on multiply/divide key";
+ include "group(olpc)"
+};
+
+// Based on Cherokee Nation Official Layout
+// http://www.cherokee.org/extras/downloads/font/Keyboard.htm
+
+partial alphanumeric_keys modifier_keys
+xkb_symbols "chr" {
+
+ name[Group1]= "USA - Cherokee";
+ key.type[group1]="ALPHABETIC";
+
+ // Alphanumeric section
+ key <TLDE> { [ grave, U13CA ] };
+ key <AE01> { [ 1, U13B1 ] };
+ key <AE02> { [ 2, U13C7 ] };
+ key <AE03> { [ 3, U13E7 ] };
+ key <AE04> { [ U13D9, U13B0 ] };
+ key <AE05> { [ U13E6, U13B9 ] };
+ key <AE06> { [ U13DC, U13DD ] };
+ key <AE07> { [ U13CB, U13E1 ] };
+ key <AE08> { [ U13D6, U13BA ] };
+ key <AE09> { [ U13D2, parenleft ] };
+ key <AE10> { [ U13C4, parenright ] };
+ key <AE11> { [ U13BF, U13BC ] };
+ key <AE12> { [ U13F3, U13BD ] };
+
+ key <AD01> { [ U13AA, U13C6 ] };
+ key <AD02> { [ U13B3, U13EB ] };
+ key <AD03> { [ U13A1, U13E3 ] };
+ key <AD04> { [ U13DB, U13CF ] };
+ key <AD05> { [ U13D4, U13D8 ] };
+ key <AD06> { [ U13EF, U13F2 ] };
+ key <AD07> { [ U13A4, U13AD ] };
+ key <AD08> { [ U13A2, U13F1 ] };
+ key <AD09> { [ U13A3, U13EC ] };
+ key <AD10> { [ U13C1, U13EA ] };
+ key <AD11> { [ U13D5, U13D1 ] };
+ key <AD12> { [ U13B6, U13E4 ] };
+ key <BKSL> { [ U13E9, U13EE ] };
+
+ key <AC01> { [ U13A0, U13CC ] };
+ key <AC02> { [ U13CD, U13CE ] };
+ key <AC03> { [ U13D7, U13D0 ] };
+ key <AC04> { [ U13A9, U13C8 ] };
+ key <AC05> { [ U13A6, U13E5 ] };
+ key <AC06> { [ U13AF, U13B2 ] };
+ key <AC07> { [ U13DA, U13AB ] };
+ key <AC08> { [ U13B8, U13A7 ] };
+ key <AC09> { [ U13B5, U13AE ] };
+ key <AC10> { [ U13E8, U13E0 ] };
+ key <AC11> { [ apostrophe, quotedbl ] };
+
+ key <AB01> { [ U13AC, U13C3 ] };
+ key <AB02> { [ U13F4, U13ED ] };
+ key <AB03> { [ U13D3, U13DF ] };
+ key <AB04> { [ U13A5, U13DE ] };
+ key <AB05> { [ U13A8, U13F0 ] };
+ key <AB06> { [ U13BE, U13BB ] };
+ key <AB07> { [ U13C5, U13B7 ] };
+ key <AB08> { [ comma, U13E2 ] };
+ key <AB09> { [ period, U13B4 ] };
+ key <AB10> { [ U13C2, U13C9 ] };
+
+ // End alphanumeric section
+};
+
+// Serbian charecters added as third level symbols to US keyboard layout.
+
+partial alphanumeric_keys
+xkb_symbols "hbs" {
+
+ name[Group1]= "USA - Serbo-Croatian";
+
+ include "us"
+
+ key <TLDE> { [ grave, asciitilde ] };
+ key <AE06> { [ 6, dead_caron, asciicircum, asciicircum ] };
+ key <AC09> { [ l, L, U1C9, U1C8 ] };
+ key <AB06> { [ n, N, U1CC, U1CB ] };
+ key <AB01> { [ z, Z, U1C6, U1C5 ] };
+ key <AD03> { [ e, E, EuroSign, cent ] };
+ key <AC03> { [ d, D, dstroke, Dstroke ] };
+ key <AC11> { [ dead_acute, quotedbl, apostrophe, apostrophe ] };
+ key <SPCE> { [ space, space, nobreakspace, nobreakspace ] };
+ key <AB08> { [ comma, less, NoSymbol, guillemotright ] };
+ key <AB09> { [ period, greater, NoSymbol, guillemotleft ] };
+
+ include "level3(ralt_switch)"
+};
+
+//based on http://upload.wikimedia.org/wikipedia/commons/1/18/T-Mobile_G1_launch_event_2.jpg
+partial alphanumeric_keys
+xkb_symbols "htcdream" {
+ include "inet(htcdream)"
+ name[Group1]= "USA - htcdream";
+
+ //second row
+ key <AD01> { [ q, Q, Tab, Tab ] };
+ key <AD02> { [ w, W, grave, grave ] };
+ key <AD03> { [ e, E, underscore, underscore ] };
+ key <AD04> { [ r, R, sterling, sterling ] };
+ key <AD05> { [ t, T, EuroSign, EuroSign ] };
+ key <AD06> { [ y, Y, division, division ] };
+ key <AD07> { [ u, U, multiply, multiply ] };
+ key <AD08> { [ i, I, minus, minus ] };
+ key <AD09> { [ o, O, plus, plus ] };
+ key <AD10> { [ p, P, equal, equal ] };
+
+ //third row
+ key <AC01> { [ a, A, NoSymbol, NoSymbol ] };
+ key <AC02> { [ s, S, bar, bar ] };
+ key <AC03> { [ d ,D, backslash, backslash ] };
+ key <AC04> { [ f, F, braceleft, braceleft ] };
+ key <AC05> { [ g, G, braceright, braceright ] };
+ key <AC06> { [ h, H, colon, colon ] };
+ key <AC07> { [ j, J, semicolon, semicolon ] };
+ key <AC08> { [ k, K, quotedbl, quotedbl ] };
+ key <AC09> { [ l, L, apostrophe, apostrophe ] };
+
+ //forth row
+ key <AB01> { [ z, Z, NoSymbol, NoSymbol ] };
+ key <AB02> { [ x, X, NoSymbol, NoSymbol ] };
+ key <AB03> { [ c, C, NoSymbol, NoSymbol ] };
+ key <AB04> { [ v, V, bracketleft, bracketleft ] };
+ key <AB05> { [ b, B, bracketright, bracketright ] };
+ key <AB06> { [ n, N, less, less ] };
+ key <AB07> { [ m, M, greater, greater ] };
+ key <AB08> { [ comma, comma, question, question ] };
+
+ //fifth row
+ key <FK15> { [ at, at, asciitilde, asciitilde ] };
+
+ include "level3(alt_switch)"
+};
+
+// EXTRAS:
+
+// XCompose is out! Unicode combining is in! For those of us who live
+// on the edge: A keymap using Unicode combining characters instead of
+// deadkeys. This variation does not deviate from the lame MS-style
+// US-intl layout; but it uses AltGr for combining, like altgr-intl.
+//
+// This might break your font layout layout systems (because they
+// suck), caveat emptor. Also, most of today's software will count
+// individual combining marks for selection, deletion, character
+// counting &c., and won't be smart enough to do canonical equivalence
+// when searching, &c.
+//
+// With Unicode combining you use "handwriting order", not
+// "typewriting order" as with deadkeys. That is, you first type the
+// base character, then the diacritics/accents/modifiers. This has
+// the advantage of avoiding hidden states --- each keypress changes
+// something on screen.
+//
+// TODO: as of now, this duplicates all us(intl) functionality with
+// combining. With care, perhaps we could add more combining marks
+// not present in intl, and support all major languages.
+partial alphanumeric_keys
+xkb_symbols "intl-unicode" {
+
+ name[Group1]= "USA - International (AltGr Unicode combining)";
+
+ include "us(intl)"
+ include "level3(ralt_switch)"
+
+ // grave, tilde
+ key <TLDE> { [grave, asciitilde, U0300, U0303 ] };
+ // double acute
+ key <AE02> { [ 2, at, twosuperior, U030B ] };
+ // macron
+ key <AE03> { [ 3, numbersign, threesuperior, U0304 ] };
+ // circumflex
+ key <AE06> { [ 6, asciicircum, onequarter, U0302 ] };
+ // horn
+ key <AE07> { [ 7, ampersand, onehalf, U031B ] };
+ // ogonek
+ key <AE08> { [ 8, asterisk, threequarters, U0328 ] };
+ // breve
+ key <AE09> { [ 9, parenleft, leftsinglequotemark, U0306 ] };
+ // abovering
+ key <AE10> { [ 0, parenright, rightsinglequotemark, U030A ] };
+
+ // belowdot
+ key <AE11> { [ minus, underscore, yen, U0323 ] };
+ // acute, diaeresis
+ key <AC11> { [apostrophe, quotedbl, U0301, U0308 ] };
+ // abovedot, caron
+ key <AB09> { [ period, greater, U0307, U030C ] };
+ // hook
+ key <AB10> { [ slash, question, questiondown, 0309 ] };
+
+ // alt-intl compatibility
+ // cedilla, caron
+ key <AB08> { [ comma, less, U0327, U030C ] };
+ // ogonek, diaeresis
+ key <AC10> { [ semicolon, colon, U0328, U0308 ] };
+ // doubleacute, horn
+ key <AE12> { [ equal, plus, U030B, U031B ] };
+
+ // we don't do combining latin letters and combining enclosures
+ // because support for those is very rare.
+};
+
+// XCompose is out! Unicode combining is in! For those of us who live
+// on the edge: A keymap using Unicode combining characters instead of
+// deadkeys. This variation does break compatibility with us-intl,
+// whenever I thought it would be more mnemonic or Unicodeish.
+partial alphanumeric_keys
+xkb_symbols "alt-intl-unicode" {
+
+ name[Group1]= "USA - International (AltGr Unicode combining, alternative)";
+
+ include "extras/us(intl-unicode)"
+ include "level3(ralt_switch)"
+
+ // easier macron; em-dash.
+ // em-dash is available via compose, but I added here since it's such
+ // an important typographic character.
+ key <AE11> { [ minus, underscore, U0304, U2014 ] };
+
+ // belowdot, abovedot (caron at coma/less key, per above)
+ key <AB09> { [ period, greater, U0323, U0307 ] };
+
+};
+
+partial alphanumeric_keys
+xkb_symbols "ats" {
+
+ include "us"
+
+ name[Group1]= "USA - Atsina";
+
+ //Using Dead key to get COMBINING COMMA ABOVE for ejectives on
+ //q, l, t, s, m, g, k, p, w, y, r
+ //XCompose key is used for the other accute and grave.
+
+ key <AD03> { [ e, E, eacute, Eacute ] };
+ key <AD07> { [ u, U, uacute, Uacute ] };
+ key <AD08> { [ i, I, iacute, Iacute ] };
+ key <AD09> { [ o, O, oacute, Oacute ] };
+ key <AD11> { [ bracketleft, braceleft, U03B8 ] };
+ key <AD12> { [ bracketright, braceright, U010D, U010C ] };
+ //U+010C (uppercase Č) and U+010D (lowercase č).
+
+ key <AC01> { [ a, A, aacute, Aacute ] };
+
+
+ //Small letter Open use compose to key get acute accent
+ key <AB03> { [ c, C, U0254, U0186 ] };
+ key <AB08> { [ comma, less, U0313 ] };
+ key <AB10> { [ slash, question, U0294 ] };
+
+ include "level3(ralt_switch)"
+ include "compose(rctrl)"
+};
+
+partial alphanumeric_keys
+xkb_symbols "crd" {
+
+ include "us"
+
+ name[Group1]= "USA - Couer D'alene Salish";
+
+ // Alphanumeric section
+ key <AD02> { [ w, W, U02B7, U02B7 ] };
+ key <AE07> { [ 7, ampersand, U0294 ] };
+ key <AD01> { [ q, Q, U221A ] };
+ key <AB04> { [ v, V, U0259 ] };
+ key <BKSL> { [ backslash, bar, U026B ] };
+ key <AD03> { [ e, E, U025B ] };
+ key <AD08> { [ i, I, U026A ] };
+ key <AC07> { [ j, J, U01F0 ] };
+ key <AE06> { [ 6, asciicircum, U0295 ] };
+ key <AC02> { [ s, S, U0161 ] };
+ key <AB03> { [ c, C, U010D ] };
+ key <AD09> { [ o, O, U0254 ] };
+ key <AB09> { [ period, greater, U0323 ] };
+
+ include "level3(ralt_switch)"
+ include "compose(rctrl)"
+
+ // End alphanumeric section
+};
diff --git a/xorg-server/xkeyboard-config/symbols/xfree68_vndr/makefile b/xorg-server/xkeyboard-config/symbols/xfree68_vndr/makefile new file mode 100644 index 000000000..c9c1b3ede --- /dev/null +++ b/xorg-server/xkeyboard-config/symbols/xfree68_vndr/makefile @@ -0,0 +1,12 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\symbols\xfree68_vndr + +dist_symbols_DATA = \ +amiga ataritt + +DATA_FILES=$(dist_symbols_DATA:%=$(DESTDIR)\%) + +include ..\..\xkbrules.mak diff --git a/xorg-server/xkeyboard-config/types/default b/xorg-server/xkeyboard-config/types/default.in index 45e1ad18c..140208ccc 100644 --- a/xorg-server/xkeyboard-config/types/default +++ b/xorg-server/xkeyboard-config/types/default.in @@ -1,9 +1,9 @@ -default xkb_types "default" {
- include "basic"
- include "pc"
- include "iso9995"
- include "extra"
- include "numpad"
- include "level5"
- include "mousekeys"
-};
+default xkb_types "default" { + include "basic" + include "pc" + include "iso9995" + include "extra" + include "numpad" + include "level5" + include "mousekeys" +}; diff --git a/xorg-server/xkeyboard-config/types/makefile b/xorg-server/xkeyboard-config/types/makefile new file mode 100644 index 000000000..ef03746ed --- /dev/null +++ b/xorg-server/xkeyboard-config/types/makefile @@ -0,0 +1,17 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +THISDIR=types + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\$(THISDIR) + +dist_xkbdata_types_DATA = \ +basic cancel caps \ +complete default extra \ +iso9995 level5 mousekeys nokia numpad \ +pc README + +DATA_FILES=$(dist_xkbdata_types_DATA:%=$(DESTDIR)\%) + +include ..\xkbrules.mak diff --git a/xorg-server/xkeyboard-config/xkbrules.mak b/xorg-server/xkeyboard-config/xkbrules.mak new file mode 100644 index 000000000..7e8f11fbc --- /dev/null +++ b/xorg-server/xkeyboard-config/xkbrules.mak @@ -0,0 +1,20 @@ +DIRFILE=$(THISDIR:%=$(DESTDIR)\..\%.dir) + +.PHONY: destdir +destdir: $(DESTDIR) + +all: destdir $(DATA_FILES) $(DIRFILE) + +$(DESTDIR)\default: default.in + copy $< $@ + +$(DESTDIR)\%: % + copy $< $@ + +ifneq ($(DIRFILE),) +.PHONY: extrastuff + +$(DIRFILE): extrastuff $(DATA_FILES) + -del -e $@ + cd $(DESTDIR) & ..\..\xkbcomp.exe -lfhlpR -o $(relpath $@) * +endif diff --git a/xorg-server/xkeyboard-config/xslt/reg2ll.xsl b/xorg-server/xkeyboard-config/xslt/reg2ll.xsl index 598eb0fca..b8c335591 100644 --- a/xorg-server/xkeyboard-config/xslt/reg2ll.xsl +++ b/xorg-server/xkeyboard-config/xslt/reg2ll.xsl @@ -1,23 +1,23 @@ -<?xml version="1.0" encoding="UTF-8"?> -<xsl:stylesheet version="1.0" - xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - > -<xsl:output method="text" - encoding="UTF-8" - doctype-system="xkb.dtd" - indent="no"/> - -<xsl:template match="modelList|optionList|name|description|shortDescription|configItem"/> -<xsl:strip-space elements="*"/> - -<xsl:template match="layoutList"><xsl:apply-templates select="./layout"/></xsl:template> - -<xsl:template match="variantList"><xsl:apply-templates select="./variant"/></xsl:template> - -<xsl:template match="layout"><xsl:text> -</xsl:text><xsl:value-of select="./configItem/name"/>:"<xsl:value-of select="./configItem/description"/>"<xsl:apply-templates match="./variantList/variant"/></xsl:template> - -<xsl:template match="variant"><xsl:text> -</xsl:text><xsl:value-of select="../../configItem/name"/>(<xsl:value-of select="./configItem/name"/>):"<xsl:value-of select="./configItem/description"/>"</xsl:template> - -</xsl:stylesheet> +<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet version="1.0"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ >
+<xsl:output method="text"
+ encoding="UTF-8"
+ doctype-system="xkb.dtd"
+ indent="no"/>
+
+<xsl:template match="modelList|optionList|name|description|shortDescription|configItem"/>
+<xsl:strip-space elements="*"/>
+
+<xsl:template match="layoutList"><xsl:apply-templates select="./layout"/></xsl:template>
+
+<xsl:template match="variantList"><xsl:apply-templates select="./variant"/></xsl:template>
+
+<xsl:template match="layout"><xsl:text>
+</xsl:text><xsl:value-of select="./configItem/name"/>:"<xsl:value-of select="./configItem/description"/>"<xsl:apply-templates match="./variantList/variant"/></xsl:template>
+
+<xsl:template match="variant"><xsl:text>
+</xsl:text><xsl:value-of select="../../configItem/name"/>(<xsl:value-of select="./configItem/name"/>):"<xsl:value-of select="./configItem/description"/>"</xsl:template>
+
+</xsl:stylesheet>
|