Red Hat Bugzilla – Bug 134210
hangul input method display not cleanly shown from xterm/gnome-terminal
Last modified: 2007-11-30 17:10:50 EST
Description of problem:
When typing hangul from xterm or gnome-terminal, the cursor and
inserted/moved letters do not show up properly, especially when using
tcsh command line editing.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. choose Hangul language from KDE or GNOME
2. from a terminal window running tcsh, type CTRL-SPACE, type some letters
3. press back arrow or CTRL-A to move cursor to prompt, type more letters
The cursor doesn't sit right next to the prompt, but slightly to the
left overlapping the prompt. When letters are inserted, either
square-boxed characters are printed or proper letters are printed, and
they fill in both directions instead of being shown as inserting at
the cursor to the right.
The cursor position and insertion of letters should work as in any
editing mode without overdrawing onto prompt or existing letters, with
propler letters instead of boxes.
FC1 ami input method never had this problem when using xterm. The
following are the fonts used in xterm
reassigning to proper package and owner.
When you cat a Korean text file on gnome-terminal, do you see the same
problem? I am just wondering if this is the problem with input method.
Yes, it echos exactly what I typed, rather than what is shown. The
input method is working perfectly. It is the way xterm or
gnome-terminal display processing of command-line editing is messed up.
I found FC1 xterm/gnome-terminal behaves exactly the same way as in
FC2, so my conclusion is that the display of command line editing has
not been updated since old days of English-only terminals, and not
moving cursor position properly when displaying TT fonts with asian
characters, although I haven't tested Chinese or Japanese command line
editing from terminals. You only need to use back arrow or CTRL-A to
see how the cursor moves into wrong places.
hanterm used to properly move the cursor to the right position and
display characters properly, but is no longer included in Fedora Core.
I think the same is with kterm or cterm.
Just to clarify my comments, cat of a file works fine. It's only the
editing that messes things up, such as backspace on a syllable/chinese
character only erases half of the character, and moving cursor using
arrows only moves half way of a character or even jumps too far to the
I think xterm/gnome-terminal is still using some 8-bit character
editing to compute cursor position in movement, deletion, and
insertion of 16-bit characters.
Most of other gnome/kde applications behave properly, so it's only
with the terminal software and some others not correctly interfacing
with input methods.
Since hanterm et al are no longer in Fedora Core, I am hoping at least
the terminal software would have been properly updated.
So the problem must be xterm and gnome-terminal or some libraries they
use, or it could be the shell program (tcsh, bash, etc.) that uses
some libraries for command-line editing that is not behaving as it should.
I tried to reproduce it in gnome-terminal 2.7.3-2 and vte 0.11.11-5
but i can able to cursoring through character and delete does delete
the whole character. Can you reproduce on those version?
- LANG=ko_KR.UTF-8 gnome-terminal --disable-factory
- "rkskek" + space
- back arrows
- delete one of the char