Bug 143014 - Cannot input composed characters on Linux console (Unicode mode)
Summary: Cannot input composed characters on Linux console (Unicode mode)
Keywords:
Status: CLOSED UPSTREAM
Alias: None
Product: Fedora
Classification: Fedora
Component: kernel
Version: 4
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Dave Jones
QA Contact: Brian Brock
URL: http://www.ussg.iu.edu/hypermail/linu...
Whiteboard:
: 75430 75811 116667 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2004-12-15 18:40 UTC by Simos Xenitellis
Modified: 2015-01-04 22:14 UTC (History)
6 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2005-11-12 06:47:47 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Simos Xenitellis 2004-12-15 18:40:25 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; el-GR; rv:1.7.5)
Gecko/20041108 Firefox/1.0

Description of problem:
Unicode mode in Linux console does not currently allow the input of
"composed" characters.

In other words, while in console in Unicode mode, you cannot write
accented characters using dead keys, due to a deficiency of the kernel
in this area.

There has been a discussion on LKML on this issue.
Start from http://www.ussg.iu.edu/hypermail/linux/kernel/0412.1/0796.html
and read the followups for the background.

Then, check http://www.ussg.iu.edu/hypermail/linux/kernel/0412.1/1039.html
for an initial patch(simple hack) that solves the problem. 
Check followups as well.

An alternative patch can be found at
http://www.rano.org/kernel_patch/003

At least the following languages (+composed characters) are affected:
gr: Greek    ά έ ί ό ύ ώ ϊ ϋ
ϊ Ά Έ Ί Ή Ύ Ϋ
es: Spanish  � � � � � � � � � � �
nl: Dutch    � � � � � � � � � � �
cz: Czech    � � �
us-ascentos: � � � � � � � � � � � �
cf: french-canadian  � � � � �
fi: Finish   � � � � � � � � � �
fr  French   � � � � � � � � � � �

Solving this issue, Fedora can claim input/output UTF-8 support for
the console.

Version-Release number of selected component (if applicable):
all

How reproducible:
Always

Steps to Reproduce:
We make a minimal demonstration file instead of using the existing
keymap files, found in /lib/kbd/keymaps/*.
1. Create minimal keymap for spanish.
% cat minimal-keymap-spanish.map
keycode 53 = 0x0d2f
keycode 2 = U+00E1
keycode 3 = U+00E9
compose '/' 'a' to U+00E1
compose '/' 'e' to U+00E9

"2f" is character "/". 
"0d" means we use "/" as dead key here.
U+00E1 is �
U+00E9 is �
keycode 2 is key "1"
keycode 3 is key "2"
2. Log on on console (no xterm :)). Use "bash" shell.
3. Run "unicode_start latarcyrheb-sun16" to reset to Unicode input.
(Just make sure all are ok, as this has been done already).
4. Run "loadkeys minimal-keymap-spanish.map"
5. Hit "1" key to generate "�", to verify it's working.
6. Hit "/" + "a" to try to generate "�". It does not work due to a
kernel issue.

Actual Results:  The byte "e1" is emmited (comes from U+00E1).
This is not valid UTF-8, so nothing is displayed.

You can view the byte by typing:
% echo -n "<type it here>" | hexdump -C

Expected Results:  "�" should be displayed at step 6. (In UTF-8, it's
"c3, a1".

Additional info:

Comment 1 Simos Xenitellis 2004-12-19 23:44:11 UTC
Added bugzilla report to bugzilla.kernel.org.
It's at
http://bugzilla.kernel.org/show_bug.cgi?id=3922
X-linked that report to this.

Comment 2 Simos Xenitellis 2005-01-03 03:06:58 UTC
It looks Bugzilla does not support UTF-8 :-/

See http://www.advogato.org/person/simosx/diary.html?start=2
to view a similar page of the bug report in UTF-8. You may need to
change the browser encoding to UTF-8.

Comment 3 Simos Xenitellis 2005-01-09 23:01:11 UTC
Discussion LKML in 2002 about revamping the unicode console support in
the Linux kernel.
Visit http://mail.nl.linux.org/linux-utf8/2002-09/msg00031.html
and then click on "Thread Index" to see the full thread.


Comment 4 Simos Xenitellis 2005-01-09 23:09:17 UTC
Article on Linux Gazette by En D Loozzr, titled: "How Linux Console
Fonts Work ", at http://linuxgazette.net/issue91/loozzr.html

Covers 2.4/2.6, it's good reading.

Comment 5 Simos Xenitellis 2005-01-22 18:08:51 UTC
Hold your horses.
There has been a discussion on the linux-utf8 mailing about Unicode on
the Linux console that significantly changes what is requested in the
bug report.

You can untangle the new information by starting at
http://mail.nl.linux.org/linux-utf8/2005-01/msg00072.html

Comment 6 Simos Xenitellis 2005-01-22 18:54:40 UTC
Re-summarising here.

Currently, the Linux kernel provides a so-called "emergency console"
which is the console interface we are used to when running on runlevel 3.

There has been a need to read/write Unicode and the easy solution was
to add to this emergency console limited support for Unicode. Adding
to the emergency console means that we add to the Linux kernel,
something that the kernel developers are not happy about.

The proper way to have Unicode support in the Linux Console is to use
the framebuffer (so we can represent the full Unicode 4.x standard)
and write a suitable terminal emulator. For input support, IIIMF looks
suitable.

Now, such a terminal emulator exists, but needs development assistance
to become more mature. It's UTERM, found at
http://members.ispwest.com/hanpaul/uterm.html

As soon as work starts on a terminal emulator (based on UTERM or
something else), I'll close this bug report and add a link to the new
location.

Comment 7 Miloslav Trmač 2005-02-18 14:53:40 UTC
*** Bug 75811 has been marked as a duplicate of this bug. ***

Comment 8 Miloslav Trmač 2005-02-18 14:59:53 UTC
*** Bug 75430 has been marked as a duplicate of this bug. ***

Comment 9 Miloslav Trmač 2005-02-18 15:11:17 UTC
*** Bug 116667 has been marked as a duplicate of this bug. ***

Comment 10 Dave Jones 2005-07-15 18:40:11 UTC
An update has been released for Fedora Core 3 (kernel-2.6.12-1.1372_FC3) which
may contain a fix for your problem.   Please update to this new kernel, and
report whether or not it fixes your problem.

If you have updated to Fedora Core 4 since this bug was opened, and the problem
still occurs with the latest updates for that release, please change the version
field of this bug to 'fc4'.

Thank you.

Comment 11 Carlos Rodrigues 2005-07-15 20:42:08 UTC
The problem is not fixed by the errata.

Comment 12 Simos Xenitellis 2005-07-15 21:43:53 UTC
Is there a link to the patch/change that tries to fix this bug?

Comment 13 Miloslav Trmač 2005-07-15 21:53:50 UTC
(NEEDINFO means "developer needs info from reporter", not the other way around)

Comment 14 Dave Jones 2005-09-30 06:57:06 UTC
Mass update to all FC4 bugs:

An update has been released (2.6.13-1.1526_FC4) which rebases to a new upstream
kernel (2.6.13.2). As there were ~3500 changes upstream between this and the
previous kernel, it's possible your bug has been fixed already.

Please retest with this update, and update this bug if necessary.

Thanks.


Comment 15 Simos Xenitellis 2005-10-03 23:22:29 UTC
The bug has not been fixed with linux kernel 2.6.13-1.1526_FC4.

Comment 16 Dave Jones 2005-11-10 20:02:57 UTC
2.6.14-1.1637_FC4 has been released as an update for FC4.
Please retest with this update, as a large amount of code has been changed in
this release, which may have fixed your problem.

Thank you.


Comment 17 Alexandre Oliva 2005-11-12 00:45:04 UTC
Nope, no fix yet.  This is probably a good candidate for a WONTFIX or at least
UPSTREAM, since it's very unlikely that the kernel will ever be able to detect
what locale the console is on to decide how to produce non-ASCII characters.

Comment 18 Simos Xenitellis 2005-11-12 00:52:15 UTC
I would concur on this.
From the discussion on the kernel mailing list, this is an issue to better solve
in userspace.

Comment 19 Dave Jones 2005-11-12 06:47:47 UTC
indeed. It's a feature request, and those sorts of things really need to go
through upstream first rather than live in a vendor tree.



Note You need to log in before you can comment on or make changes to this bug.