(needs x11 protocol update) XKB cannot map multiple keyboard models

Bug #120788 reported by Oliver Elphick
38
This bug affects 2 people
Affects Status Importance Assigned to Milestone
gnome-control-center
Unknown
Wishlist
xkeyboard-config
Invalid
Medium
x11proto-core (Ubuntu)
Invalid
Wishlist
Unassigned

Bug Description

The X.org XKB protocol has a limitation in that it can map only one keyboard model and a max of 4 layouts (bug #56912) in a given X session. The data type used to communicate keyboard mappings between the server and client apps simply doesn't provide room for the data needed for multiple keyboards. So a proper solution requires updating the X11 protocol to X12 (or at least X11.1), which is something that must be done upstream (further, there is risk that changing the protocol could cause widespread breakage in client applications if not done carefully.)

So, in other words, this is not something that can be trivially fixed, but it's a known issue and will hopefully be dealt with some day.

[Original Report]
The gnome-keyboard-properties dialog allows me to define only 1 keyboard model; instead the model ought to be specific to each layout.

I have an English keyboard (Logitech Internet Navigator Keyboard with 105 keys) and also a French one (AZERTY with 104 keys). I cannot properly define the French one because I cannot select an appropriate keyboard model for it without disrupting the definition of the English keyboard. I can only define a single model system-wide.

[lspci]
00:00.0 Memory controller [0580]: nVidia Corporation CK804 Memory Controller [10de:005e] (rev a3)
     Subsystem: ASUSTeK Computer Inc. A8N-E Mainboard [1043:815a]
05:00.0 VGA compatible controller [0300]: nVidia Corporation G70 [GeForce 7600 GT] [10de:0391] (rev a1) (prog-if 00 [VGA controller])

Revision history for this message
In , tuharsky (tuharsky) wrote :

Also the backplane symbol is missing. It seems that the whole key is left untouched when switching to US keyboard.

The settings in xorg.conf:

        Option "XkbVariant" "qwerty,"
        Option "XkbLayout" "sk,us"
        Option "XkbOptions" "grp:shift_toggle,grp_led:scroll"

Please note that this bug makes any shell terminal useless. Try to do any administration without pipe symbol ;-)

Revision history for this message
In , Daniel Stone (daniels) wrote :

Sorry about the phenomenal bug spam, guys. Adding xorg-team@ to the QA contact so bugs don't get lost in future.

Revision history for this message
Oliver Elphick (olly-lfix) wrote : gnome-keyboard-properties does not handle 2 different keyboard models

Binary package hint: gnome-control-center

The gnome-keyboard-properties dialog allows me to define only 1 keyboard model; instead the model ought to be specific to each layout.

I have an English keyboard (Logitech Internet Navigator Keyboard with 105 keys) and also a French one (AZERTY with 104 keys). I cannot properly define the French one because I cannot select an appropriate keyboard model for it without disrupting the definition of the English keyboard. I can only define a single model system-wide.

Revision history for this message
Áron Sisak (asisak) wrote :

Thanks for reporting this issue. I am not sure this is a bug in gnome-control-center.
This might also depend on how the X server handles keyboards.

Changed in gnome-control-center:
importance: Undecided → Low
status: Unconfirmed → Confirmed
Revision history for this message
Sebastien Bacher (seb128) wrote :

Thank you for your bug report. What version of Ubuntu do you use? Do you mean that you use several keyboards in the same time on the same configuration?

Changed in gnome-control-center:
assignee: nobody → desktop-bugs
status: Confirmed → Incomplete
Revision history for this message
Oliver Elphick (olly-lfix) wrote : Re: [Bug 120788] Re: gnome-keyboard-properties does not handle 2 different keyboard models

On Sat, 2008-02-09 at 12:54 +0000, Sebastien Bacher wrote:
> Thank you for your bug report. What version of Ubuntu do you use? Do you
> mean that you use several keyboards in the same time on the same
> configuration?
>
> ** Changed in: gnome-control-center (Ubuntu)
> Assignee: (unassigned) => Ubuntu Desktop Bugs (desktop-bugs)
> Status: Confirmed => Incomplete

I'm attempting to use a French Azerty keyboard as well as an English
(UK) Qwerty one. It works except that the <> key (to the left of W on a
French keyboard) is not mapped correctly but produces \| like a British
keyboard. I use the French one when writing text in French - it's much
easier to produce the accented letters.

The problem is that the French keyboard has only 104 keys and the
English one has 105. As I understand it, the design of X itself doesn't
allow for that.
--
Oliver Elphick <email address hidden>
Paule, Brittany, France http://www.lfix.co.uk/oliver
GPG: 1024D/A54310EA 92C8 39E7 280E 3631 3F0E 1EC0 5664 7A2F A543 10EA
                 ========================================
 You're nearly out of time! http://www.lfix.co.uk/disappearance.html

--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.

Revision history for this message
In , tuharsky (tuharsky) wrote :

Hi,

anything new?

Revision history for this message
In , tuharsky (tuharsky) wrote :

I don't know, whether I have set architecture correctly. Is this proper for i386?

Revision history for this message
Sebastien Bacher (seb128) wrote : Re: gnome-keyboard-properties does not handle 2 different keyboard models

http://bugzilla.gnome.org/show_bug.cgi?id=545897 states that's an xorg issue

"It is not possible within the current X/XKB schema. It allows only one model
("man setxkbmap").

What is needed is PnP solution on X level - chosing right model depending on
the plugged keyboard. But that's not GNOME's task."

Changed in gnome-control-center:
assignee: desktop-bugs → nobody
status: Incomplete → New
Changed in gnome-control-center:
status: Unknown → Invalid
Revision history for this message
Bryce Harrington (bryce) wrote :

Hi olly-lfix,

Please attach the output of `lspci -vvnn`, and attach your /var/log/Xorg.0.log file from after reproducing this issue. If you've made any customizations to your /etc/X11/xorg.conf please attach that as well.

Changed in xorg-server:
status: New → Incomplete
Revision history for this message
Oliver Elphick (olly-lfix) wrote :

As for reproducing it, the keyboard preferences dialogue still gives me only one choice of keyboard model, whereas I have 2 keyboards of different models, so I still have a problem. When the 105 character UK keyboard model is selected, which is the normal case, the French <> key produces \|. I am running Ubuntu Hardy Heron.

I attach a file containing the data you requested; I have also included the USB data about the two keyboards.

Revision history for this message
Bryce Harrington (bryce) wrote :

Moving to wishlist since from the gnome bug it sounds like this is an issue with the X protocol, which would need extended to support a multiplicity of keyboards. This should probably be forwarded to X upstream.

Changed in xkeyboard-config:
importance: Low → Wishlist
status: Incomplete → Confirmed
Bryce Harrington (bryce)
Changed in xkeyboard-config:
status: Confirmed → Triaged
Changed in xkeyboard-config:
status: Unknown → Confirmed
Bryce Harrington (bryce)
description: updated
Revision history for this message
Bryce Harrington (bryce) wrote :

[This is probably more an xserver issue than xkeyboard-config]

Revision history for this message
Bryce Harrington (bryce) wrote :

[Or rather, x11proto-core it seems is the best place for it.]
Also see related bug #56912

description: updated
Bryce Harrington (bryce)
description: updated
Revision history for this message
Brad Bowman (launchpad-bereft) wrote :

> What is needed is PnP solution on X level - chosing right model depending on
> the plugged keyboard. But that's not GNOME's task."

Is this what evdev now does?
With the right x11-input.fdi file can this now be worked around?

Changed in xkeyboard-config:
importance: Unknown → Medium
Changed in gnome-control-center:
importance: Unknown → Wishlist
status: Invalid → Unknown
Changed in xkeyboard-config:
importance: Medium → Unknown
Changed in xkeyboard-config:
importance: Unknown → Medium
Revision history for this message
In , Ajax-a (ajax-a) wrote :

Mass closure: This bug has been untouched for more than six years, and is not
obviously still valid. Please reopen this bug or file a new report if you continue to experience issues with current releases.

Changed in xkeyboard-config:
status: Confirmed → Invalid
Simon Quigley (tsimonq2)
Changed in x11proto-core (Ubuntu):
status: Triaged → Incomplete
Mathew Hodson (mhodson)
Changed in x11proto-core (Ubuntu):
status: Incomplete → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.