[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#610263: xkb-data: Mapping Prior and Next to Mod3+U and Mod3+I clobbers Shift+U and Shift+I



Package: xkb-data
Version: 1.3-2
Severity: normal


I created a custom layout called "cjns" in /usr/etc/X11/xkb/symbols
where among other things, the ‘navigation keypad’ is remapped to
Mod3+[UIOP] (PgUp, PgDn, Home, End) and Mod3+[HJKL] (Arrow keys).

The navigation keys all work fine where I need them, for instance in the
seamonkey/mozilla browser, but I noticed that the Shift+U and Shift+I,
the keys that have a 3rd level mapping to Prior and Next, no longer
produce an upper case U or an upper case I.

What makes me suspect that the problem is with the xkb package rather
than XTerm is that I get similar results with other traditional
X applications, such as Xman (Xman has a text-entry field under the
‘Search’ option).

To recreate the problem: 

// duplicate the standard ‘us’ layout under another name:

partial alphanumeric_keys
xkb_symbols "cjns" {
    name[Group1]= "USA - cjns";

....

// add 3rd level definitions of ‘Prior’ and ’Next’, e.g.:

key <AD07> { [   u,   U,     Prior,         NoSymbol ] };
key <AD08> { [   i,   I,      Next,         NoSymbol ] };

....

// map Mod3 to the windows keys:

    include "level3(win_switch)"
};

After enabling the custom keyboard layout via ‘setxkbmap cjns’, the
shifted forms of the ‘U’ and ’I’ keys no longer work when typed in an
XTerm, or other X applications.

Workaround:

Mapping KP_Prior and KP_Next to the same keys do not cause the problem:

key <AD07> { [   u,   U,  KP_Prior,         NoSymbol ] };
key <AD08> { [   i,   I,   KP_Next,         NoSymbol ] };

Additional remarks:

With the initial mapping (Prior/Next), Shift+U and Shift+I appear to be
mapped to Shift+Prior and Shift+Next respectively.

In an XTerm, this can be verified by typing Shift+U and Shift+I, which
results in scrolling the XTerm's input/output history.

-- System Information:
Debian Release: 5.0.7
  APT prefers stable
  APT policy: (500, 'stable')
Architecture: i386 (i686)

Kernel: Linux 2.6.26-2-686-bigmem (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

-- debconf-show failed




Reply to: