Variant keyboard layouts are numbered with a subscript instead of something more descriptive

Bug #475280 reported by Ævar Arnfjörð Bjarmason on 2009-11-05
This bug affects 1 person
Affects Status Importance Assigned to Milestone
libgnomekbd (Ubuntu)

Bug Description

Binary package hint: gnome-control-center

When I add e.g. Iceland/Iceland Macintosh/Iceland basic in Gnome keyboard preferences the layouts will appear in the panel switcher as Isl, Isl<sub>2</sub>, Isl</sub>3</sub>.

Instead they should appear as Isl, Isl<sub>mac</sub>, Isl<sub>dvorak</sub>.

It would take a little more space but you'd actually know what keyboard layout you're using without having to recall what the autogenerated subscript index means.

ProblemType: Bug
Architecture: i386
CheckboxSubmission: 0169f76fbe64c26c287457397cc58891
CheckboxSystem: bb422ca46d02494cdbc459927a98bc2f
Date: Thu Nov 5 11:32:36 2009
DistroRelease: Ubuntu 9.10
ExecutablePath: /usr/bin/gnome-keyboard-properties
Package: gnome-control-center 1:2.28.1-0ubuntu1
ProcVersionSignature: Ubuntu 2.6.31-14.48-generic
SourcePackage: gnome-control-center
Uname: Linux 2.6.31-14-generic i686

affects: gnome-control-center (Ubuntu) → xkeyboard-config (Ubuntu)
Bryce Harrington (bryce) on 2010-03-18
tags: added: karmic

I just upgraded to 10.04 beta1 and this issue got even worse. Now there's not even a subscript indication, the indicator just stays at "Isl" and the only way to find out which on it's at is to hover over it with the mouse which'll display a tooltip like "Iceland Dvorak" or simply "Iceland".

Bruno Girin (brunogirin) on 2010-07-01
Changed in xkeyboard-config (Ubuntu):
status: New → Confirmed
Bruno Girin (brunogirin) wrote :

I can confirm that with the United Kingdom layouts too. Steps to reproduce:

1. Go to System -> Preferences -> Keyboard
2. Select the Layout tab
3. Click Add...
4. Select the same country as your primary layout but a different variant.
5. Click Add
6. Click Close

Expected behaviour:
The keyboard layout indicator in the top panel displays the currently selected keyboard layout in a way that is non-ambiguous

Actual behaviour:
The keyboard layout indicator in the top panel only displays a subscript, like GBr and GBr2, which is not enough to unambiguously identify what layout is selected.

Simos Xenitellis  (simosx) wrote :

The issue is that the space on the panel is quite limited to be able to show the full variant codename.
In some cases the name can be over 20 characters long ('102_qwertz_comma_nodead').

The expected workflow is to select the order in the Keyboard Preferences (under Layouts) so that you are notified with the subscript index when you are viewing the second layout. The second and subsequence variants have subscripts 2, 3, and so on.

On Ubuntu 10.04 I am able to see the subscript; tried with both GBr and Icl.

I would like to see a list of steps to reproduce the issue when the subscript is not shown. Make sure that you use the Keyboard Preferences to add the new variants. Also, show the settings with
gconftool-2 -R /desktop/gnome/peripherals/keyboard/kbd

Bruno Girin (brunogirin) wrote :

@Simos: I agree that you do see the subscript with the current version of Lucid so the issue in comment #2 seems to have been resolved. I also agree that the area in the panel is limited. This is still a valid usability issue though, especially for users who use several keyboard layouts on a regular basis. I don't think it would be necessary to include the whole variant code name in the panel but enough information to make it non-ambiguous such as an abbreviation of the variant, e.g. GBr Dv for United Kingdom Dvorak would go a long way to resolve this.

Simos: As Bruno points out you don't need to show the complete
thing. In fact just showing the first character would work in most
cases. In the xkeyboard-config/symbols directory:

    $ for i in ??; do ack '^xkb_symbols\s+"(.)(.*?)"' --output="$i:\$1" $i; done |sort|uniq -c|sort -n|grep -c '1 '

    $ for i in ??; do ack '^xkb_symbols\s+"(.)(.*?)"' --output="$i:\$1" $i; done |sort|uniq -c|sort -n|grep -vc '1 '

Most of those 81 things are layouts with variant subscripts, like am's
'eastern' and 'eastern-alt'. But for the rest (the 239) the first
letter is unambiguous:

    $ for i in ??; do ack '^xkb_symbols\s+"(.)(.*?)"' --output="$i:\$1/\$2" $i; done | grep ^is

It'd be a large UI improvement I think to look at the xkb_symbols for
each language, if the first letter is unique use that, otherwise fall
back on the old numeric subscripts behavior.

As for how I got a gnome-panel keyboard widget with no numeric
subscripts. I simply upgraded to 10.04. Before the upgrade I had the
subscripts, but not after.

Here's my gconftool output:

    layouts = [is dvorak,is]
    options = [lv3 lv3:ralt_switch,grp grp:alts_toggle,ctrl ctrl:swapcaps]
    model = pc105

Bryce Harrington (bryce) wrote :

seb128 bumped this to xkeyboard-config but it looks like the decision whether to use subscripts or not is a UI issue. As avarab points out, the information necessary to construct full or abbreviated names is provided by xkeyboard-config's files, and the UI lets the user control which layout is mapped to which subscript.

Bumping back to gnome-control-center. If some specific change is needed in xkeyboard-config, please elaborate.

affects: xkeyboard-config (Ubuntu) → gnome-control-center (Ubuntu)
Changed in gnome-control-center (Ubuntu):
status: Confirmed → New
Sebastien Bacher (seb128) wrote :

Thank you for your bug report. The issue is an upstream one and it would be nice if somebody having it could send the bug the to the people writting the software (

affects: gnome-control-center (Ubuntu) → libgnomekbd (Ubuntu)
Changed in libgnomekbd (Ubuntu):
importance: Undecided → Wishlist
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers