Bug 88545 - Add more keyboard mappings to kbd-model-map
Summary: Add more keyboard mappings to kbd-model-map
Status: RESOLVED FIXED
Alias: None
Product: systemd
Classification: Unclassified
Component: general (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: systemd-bugs
QA Contact: systemd-bugs
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-01-17 21:11 UTC by Mindaugas Baranauskas
Modified: 2015-01-22 08:16 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
add keymaps patch (1.27 KB, text/plain)
2015-01-17 21:11 UTC, Mindaugas Baranauskas
Details
full file (3.52 KB, text/plain)
2015-01-17 21:12 UTC, Mindaugas Baranauskas
Details

Description Mindaugas Baranauskas 2015-01-17 21:11:25 UTC
Created attachment 112405 [details]
add keymaps patch

Add some missing layout mappings. 
"ko" is wrong (for openSUSE atleast), it should be "korean".

See also https://bugzilla.novell.com/show_bug.cgi?id=897803
Comment 1 Mindaugas Baranauskas 2015-01-17 21:12:23 UTC
Created attachment 112406 [details]
full file
Comment 2 Zbigniew Jedrzejewski-Szmek 2015-01-18 05:26:00 UTC
Hm, on F21 we have:

/usr/lib/kbd/keymaps/xkb/kr-kr104.map.gz
/usr/lib/kbd/keymaps/xkb/kr.map.gz

and no ko.map.gz. But neither korean.map.gz.

sk is fine.

For Lithuanian:

/usr/lib/kbd/keymaps/xkb/lt-ibm.map.gz
/usr/lib/kbd/keymaps/xkb/lt-lekpa.map.gz
/usr/lib/kbd/keymaps/xkb/lt-lekp.map.gz
/usr/lib/kbd/keymaps/xkb/lt.map.gz
/usr/lib/kbd/keymaps/xkb/lt-std.map.gz
/usr/lib/kbd/keymaps/xkb/lt-us.map.gz

(so no lt.map or lt.baltic.)

And no khmer keymap afaict.

Where do suse keymaps come from?
Comment 3 Zbigniew Jedrzejewski-Szmek 2015-01-18 05:28:21 UTC
Actually there's /usr/lib/kbd/keymaps/legacy/i386/qwerty/ko.map.gz. So the 'ko' mapping might be correct after all. I'm not sure how to tell what they are for...
Comment 4 Zbigniew Jedrzejewski-Szmek 2015-01-18 05:45:37 UTC
I didn't search the legacy dirs correctly.
We have lt.baltic and lt.l4. But no lt.map.
Comment 5 Mindaugas Baranauskas 2015-01-18 08:56:28 UTC
There is no such files in openSUSE nowhere:
lt-ibm.map.gz
lt-lekpa.map.gz
lt-lekp.map.gz
lt-std.map.gz (but is /usr/share/kbd/keymaps/i386/azerty/lt.std.map.gz)
lt-us.map.gz

Please don't confuse console keyboards in 
/usr/share/kbd/keymaps/*/* (in openSUSE, from kbd package) 
and X keyboards in
/usr/share/X11/xkb/*/* (in openSUSE, from xkeyboard-config package).

For Lithuania, all X11 keyboards described in one file:
/usr/share/X11/xkb/symbols/lt

lt.map you have:
/usr/lib/kbd/keymaps/xkb/lt.map.gz
But actually, in openSUSE 
/usr/share/kbd/keymaps/i386/qwerty/lt.map.gz
it has two layouts inside: 
default is "us" layout, with ability to switch to real Lithuanian layout by pressing Alt+Enter (and is mostly same as lt.baltic).
So /usr/share/kbd/keymaps/i386/qwerty/lt.map.gz is not real usable layout.
I suggest, that in Fedora21 updated layouts, lt.map layout is same as our lt.baltic.map.
Comment 6 Mindaugas Baranauskas 2015-01-18 09:14:07 UTC
I just downloaded latest upstream kbd http://kbd-project.org/download/ .
There is lt.baltic.map, lt.l4.map, lt.map.

lt.std additionala SUSE keyboard (see suse-add.tar.bz2  in https://build.opensuse.org/package/show/openSUSE:Factory/kbd ).

lt-ibm.map.gz lt-lekpa.map.gz lt-lekp.map.gz lt-std.map.gz lt-us.map.gz are Fedora specific keymaps, because they are created by converting X11 layout during RPM build: https://apps.fedoraproject.org/packages/kbd/sources/spec/
Comment 7 Mindaugas Baranauskas 2015-01-18 10:30:52 UTC
lt.l4 is the same layout as lt, but it shoul be used in diferent modes and with diferent font, compare:

kbd_mode -a; echo -ne '\\033\\045@\\033(K'\015" ;
loadkeys lt.l4.map; setfont lat4a-16 -m vga2iso

kbd_mode -u; echo -ne '\\033\\045G\\033(K'\015" ;
loadkeys lt.map   ; setfont lat4-16  -m vga2iso

So for a while please include all proposed layouts to systemd kbd-model-map, 
plus lt.l4 (same rules as lt.map/lt.baltic when switchig from console to X), 
except lt.std, as it is not upstream.
Comment 8 Zbigniew Jedrzejewski-Szmek 2015-01-22 06:26:58 UTC
Please check http://cgit.freedesktop.org/systemd/systemd/commit/?id=534644b7be.

I added most of the proposed mappings, they all seem backwards compatible, but not korean. If you think it should be added, please make a (separate) patch with an explanation why the change is the correct thing to do.
Comment 9 Mindaugas Baranauskas 2015-01-22 08:16:06 UTC
Thanks


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.