From 1966b7dd361dd90628e84f90eedb34a34b0de170 Mon Sep 17 00:00:00 2001 From: Alexander Gottwald Date: Wed, 15 Sep 2004 16:34:18 +0000 Subject: Pull XORG-6_8_0 to CYGWIN branch --- README.config | 52 +++++++++++++++++++++++++--------------------------- README.enhancing | 44 +++++++++++++++++++++----------------------- expr.c | 2 +- 3 files changed, 47 insertions(+), 51 deletions(-) diff --git a/README.config b/README.config index 229049d..44d0b0a 100644 --- a/README.config +++ b/README.config @@ -6,7 +6,7 @@ Abstract - This document describes how to configure XFree86 XKB from a user's + This document describes how to configure X11R6.8 XKB from a user's point a few. It converts basic configuration syntax and gives also a few examples. @@ -39,20 +39,20 @@ The parameters are: o XkbOptions - extra xkb configuration options The proper rules file depends on your vendor. In reality, the commonest file -of rules is xfree86. For each rules file there is a description file named -.lst, for instance xfree86.lst which is located in xkb configu- -ration subdirectory rules (for example /etc/X11/xkb/rules). +of rules is xorg. For each rules file there is a description file named .lst, for instance xorg.lst which is located in xkb configuration +subdirectory rules (for example /etc/X11/xkb/rules). 2.1 Basic Configuration Let's say you want to configure a PC style America keyboard with 104 keys as -described in xfree86.lst. It can be done by simply writing several lines from -below to you XFree86 configuration file (often found as /etc/X11/XF86Config-4 -or /etc/X11/XF86Config): +described in xorg.lst. It can be done by simply writing several lines from +below to you xorg.conf configuration file (previously known as +/etc/X11/XF86Config-4 or /etc/X11/XF86Config): Section "InputDevice" Identifier "Keyboard1" - Driver "Keyboard" + Driver "kbd" Option "XkbModel" "pc104" Option "XkbLayout" "us" @@ -67,18 +67,18 @@ named basic is loaded. Of course, this can be also done at runtime using utility setxkbmap. Shell command loading the same keyboard mapping would look like: - setxkbmap -rules xfree86 -model pc104 -layout us -option "" + setxkbmap -rules xorg -model pc104 -layout us -option "" The configuration and the shell command would be very analogical for most other layouts (internationalized mappings). 2.2 Advanced Configuration -Since XFree86 4.3.x you can use multi-layouts xkb configuration. What does -it mean? Basically it allows to load up to four different keyboard layouts at -a time. Each such layout would reside in its own group. The groups (unlike -complete keyboard remapping) can be switched very fast from one to another by -a combination of keys. +You can use multi-layouts xkb configuration. What does it mean? Basically it +allows to load up to four different keyboard layouts at a time. Each such +layout would reside in its own group. The groups (unlike complete keyboard +remapping) can be switched very fast from one to another by a combination of +keys. Let's say you want to configure your new Logitech cordless desktop keyboard, you intend to use three different layouts at the same time - us, czech and @@ -89,7 +89,7 @@ Then the configuration snippet could look like this: Section "InputDevice" Identifier "Keyboard1" - Driver "Keyboard" + Driver "kbd" Option "XkbModel" "logicordless" Option "XkbLayout" "us,cz,de" @@ -99,7 +99,7 @@ Then the configuration snippet could look like this: Of course, this can be also done at runtime using utility setxkbmap. Shell command loading the same keyboard mapping would look like: - setxkbmap -rules xfree86 -model logicordless -layout "us,cz,de" \ + setxkbmap -rules xorg -model logicordless -layout "us,cz,de" \ -option "grp:alt_shift_toggle" 2.3 Even More Advanced Configuration @@ -110,7 +110,7 @@ use another variant but basic. The configuration snippet then changes into: Section "InputDevice" Identifier "Keyboard1" - Driver "Keyboard" + Driver "kbd" Option "XkbModel" "logicordless" Option "XkbLayout" "us,cz,de" @@ -125,7 +125,7 @@ enhanced definition of the backslash key). Analogically, the loading runtime will change to: - setxkmap -rules xfree86 -model logicordless -layout "us,cz,de" \ + setxkmap -rules xorg -model logicordless -layout "us,cz,de" \ -variant ",bksl," -option "grp:alt_shift_toggle" 2.4 Basic Global Options @@ -139,9 +139,9 @@ components should be used to form the resulting keyboard mapping. This method is rather "brute force". You precisely need to know the structure and the meaning of all of used configuration components. -This method also exposes all xkb configuration details directly into XFree86 -configuration file which is a not very fortunate fact. In rare occasions it -may be needed, though. So how does it work? +This method also exposes all xkb configuration details directly into +xorg.conf configuration file which is a not very fortunate fact. In rare +occasions it may be needed, though. So how does it work? 3.1 Basic Components @@ -166,16 +166,16 @@ Look at the following example: Section "InputDevice" Identifier "Keyboard0" - Driver "Keyboard" + Driver "kbd" - Option "XkbKeycodes" "xfree86" + Option "XkbKeycodes" "xorg" Option "XkbTypes" "default" Option "XkbSymbols" "en_US(pc104)+de+swapcaps" Option "XkbGeometry" "pc(pc104)" Option "XkbCompat" "basic+pc+iso9995" EndSection -This configuration sets the standard XFree86 default interpretation of key- +This configuration sets the standard X server default interpretation of key- board keycodes, sets the default modificator types. The symbol table is com- posed of extended US keyboard layout in its variant for pc keyboards with 104 keys plus all keys for german layout are redefined respectively. Also the @@ -192,7 +192,5 @@ been obsoleted by previously described rules files which are far more flexi- ble and allow simpler and more intuitive syntax. It is preserved merely for compatibility reasons. Avoid using it if it is possible. - Generated from XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/XKB-Config.sgml,v 1.4 dawes Exp $ - -$XFree86: $ +$XdotOrg: xc/programs/xkbcomp/README.config,v 1.3 2004/09/03 23:41:22 kem Exp $ diff --git a/README.enhancing b/README.enhancing index db78026..3ce2b34 100644 --- a/README.enhancing +++ b/README.enhancing @@ -24,7 +24,7 @@ A useful source is also Ivan Pascal's text about xkb configuration ment. Note that this document covers only enhancements which are to be made to -XFree86 version 4.3.x and above. +XFree86 version 4.3 and X11R6.7.0 and above. 2. The Basics @@ -104,10 +104,10 @@ tricks. 3.1 Levels And Groups -Since XFree86 4.3.0 you can use multi-layout concept of xkb configuration. -Though it is still in boundaries of xkb protocol and general ideas, the -keymap designer must obey new rules when creating new maps. In exchange we -get a more powerful and cleaner configuration system. +Since XFree86 4.3.0 and X11R6.7.0 you can use multi-layout concept of xkb +configuration. Though it is still in boundaries of xkb protocol and general +ideas, the keymap designer must obey new rules when creating new maps. In +exchange we get a more powerful and cleaner configuration system. Remember that it is the application which must decide which symbol matches which keycode according to effective modifier state. The X server itself @@ -124,7 +124,7 @@ modifiers. key, for instance, usually doesn't depend on any modi- fiers so it its row has only one column defined. Note that in XKB there is no prior assumption that certain modifiers are -bound to certain columns. By editing proper files (see keytypes (section 4.2, +bound to certain columns. By editing proper files (see refnam (section 4.2, page 1)) this mapping can be changed as well. Unlike the original X protocol the XKB approach is far more flexible. It is @@ -132,12 +132,12 @@ comfortable to add one additional XKB term - group. You can think of a group as of a vector of columns per each keycode (naturally the dimension of this vector may differ for different keycodes). What is it good for? The group is not very useful unless you intend to use more than one logically different -set of symbols (like more than one alphabet) defined in a single mapping ta- -ble. But then, the group has a natural meaning - each symbol set has its own -group and changing it means selecting a different one. XKB approach allows -up to four different groups. The columns inside each group are called (shift) -levels. The X server knows the current group and reports it together with -modifier set and with a keycode in key events. +set of symbols (like more than one alphabet) defined in a single mapping +table. But then, the group has a natural meaning - each symbol set has its +own group and changing it means selecting a different one. XKB approach +allows up to four different groups. The columns inside each group are called +(shift) levels. The X server knows the current group and reports it together +with modifier set and with a keycode in key events. To sum it up: @@ -223,9 +223,9 @@ altering what may be needed. The differences in the number of columns (shift levels) are caused by a dif- ferent types of keys (see the types definition in section basics). Most key- -codes have implicitly set the keytype in the included "pc/latin" file to -"FOUR_LEVEL_ALPHABETIC". The only exception is keycode which is -explicitly set "TWO_LEVEL" keytype. +codes have implicitly set the keytype in the included 'pc/latin' file to +'FOUR_LEVEL_ALPHABETIC'. The only exception is keycode which is +explicitly set 'TWO_LEVEL' keytype. All those names refer to pre-defined shift level schemes. Usually you can choose a suitable shift level scheme from default types scheme list in proper @@ -423,7 +423,7 @@ this: ! model = keycodes macintosh_old = macintosh ... - * = xfree86 + * = xorg ! model = symbols hp = +inet(%m) @@ -446,10 +446,10 @@ Each rule defines what certain combination of values on the left side of equal sign ('=') results in. For example a (keyboard) model macintosh_old instructs xkb to take definitions of keycodes from file keycodes/macintosh while the rest of models (represented by a wild card '*') instructs it to -take them from file keycodes/xfree86. The wild card represents all possible -values on the left side which were not found in any of the previous rules. -The more specialized (more complete) rules have higher precedence than gen- -eral ones, i.e. the more general rules supply reasonable default values. +take them from file keycodes/xorg. The wild card represents all possible val- +ues on the left side which were not found in any of the previous rules. The +more specialized (more complete) rules have higher precedence than general +ones, i.e. the more general rules supply reasonable default values. As you can see some lines contain substitution parameters - the parameters preceded by the percent sign ('%'). The first alphabetical character after @@ -505,7 +505,5 @@ rules file described above the .lst file could look like: And that should be it. Enjoy creating your own xkb mapping. - Generated from XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/XKB-Enhancing.sgml,v 1.2 dawes Exp $ - -$XFree86: $ +$XdotOrg: xc/programs/xkbcomp/README.enhancing,v 1.3 2004/09/03 23:41:22 kem Exp $ diff --git a/expr.c b/expr.c index ba91187..4c77d8b 100644 --- a/expr.c +++ b/expr.c @@ -1,4 +1,4 @@ -/* $XdotOrg: xc/programs/xkbcomp/expr.c,v 1.1.4.3.4.1 2004/03/04 17:49:08 eich Exp $ */ +/* $XdotOrg: xc/programs/xkbcomp/expr.c,v 1.2 2004/04/23 19:54:50 eich Exp $ */ /* $Xorg: expr.c,v 1.5 2000/08/17 19:54:30 cpqbld Exp $ */ /************************************************************ Copyright (c) 1994 by Silicon Graphics Computer Systems, Inc. -- cgit v1.2.3