Bug 9380

Summary: Danish and Swedish xkb keymap corrections
Product: [Retired] Red Hat Linux Reporter: Christian Rose <menthos>
Component: XFree86Assignee: Preston Brown <pbrown>
Status: CLOSED RAWHIDE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 6.1   
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2000-02-19 23:55:48 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 9867    

Description Christian Rose 2000-02-12 16:10:00 UTC
Certain keys on the Swedish (se) and Danish (dk) keyboards don't work as
expected with the xkb keymaps for those layouts. The problem arises when
one wants to type characters with accents (^"~'`) and has to use dead keys
for this. It doesn't matter if dead_keys is enabled, the problem is in the
keymap.

The problem may affect more than the Swedish and Danish layout. I use the
Swedish layout myself and the problem with the Danish layout was reported
by a Danish user, Birger Langkjer, to the Redhat I18N mailing list.
It is probably a safe bet that this problem also effects the Norwegian (no)
layout, for example, and that the solution should be similar to those
below.

The solutions:

Swedish layout
File: /usr/X11R6/lib/X11/xkb/symbols/se
The lines:
    key <AE12> {        [           acute,           grave      ]       };
    key <AD12> {        [       diaeresis,     asciicircum      ]       };
should be changed to:
    key <AE12> {        [      dead_acute,      dead_grave      ]       };
    key <AD12> {        [  dead_diaeresis, dead_circumflex      ]       };


Danish layout:
File: /usr/X11R6/lib/X11/xkb/symbols/dk
The lines:
    key <AE12> {        [           acute,           grave      ],
                        [             bar,     dead_ogonek      ]       };
    key <AD12> {        [       diaeresis,     asciicircum      ],
                        [      asciitilde,     dead_macron      ]       };
should be changed to:
    key <AE12> {        [      dead_acute,      dead_grave      ],
                        [             bar,     dead_ogonek      ]       };
    key <AD12> {        [  dead_diaeresis, dead_circumflex      ],
                        [      dead_tilde,     dead_macron      ]       };

Comment 1 Preston Brown 2000-02-14 17:49:59 UTC
dk seems to have been fixed for 3.3.6.  I fixed the swedish and norwegian ones.

Comment 2 Christian Rose 2000-02-14 18:27:59 UTC
The Finnish keyboard map may also be affected by this bug, as it is almost(?)
identical to the Swedish one. Sorry for not discovering this the first time.

Comment 3 Preston Brown 2000-02-14 19:54:59 UTC
I'll patch that too.

Comment 4 birger.langkjer 2000-02-19 23:55:59 UTC
The solution above was taken from a danish HOWTO somewhere, however there's a
more updated solution at:
http://anubis.dkuug.dk/keld/xkbd_latin1-1.5.tgz
(or http://www.dkuug.dk/keld)

I recommend using this fix instead since a lot of thought has gone into it.

Comment 5 Christian Rose 2000-08-27 17:26:45 UTC
Closing old reports.