The backspace_deletes_char changes are important for Indic,
and we should backport them to our GTK+-2.4 package.
(What they do is that if you have a syllable,say:
<cons> <virama> <cons> <vowel>
with the cursor after hit, and you hit the <Backspace>
key, only the vowel is deleted, not the entire syllable.)
The backport is in gtk2-2.4.9-7.
This 'feature' happens to many other scripts as well. Because of this,
our distro may not able to pass openi18n certification any more.
Please see "Assertion 2: Verify this utility can delete per character
in the text encoded in UTF-8" at:
1) If you can find scripts where the behavior is wrong for *users*
of the scripts, then we can modify the behavior for those
2) If it's just standards compliance, then if you *first* file
a defect report against openi18n, then possibly we can
add a config flag or environment variable to make Pango
produce the "desired" behavior.
What that openi18n test about though is testing that delete isn't
deleting bytes; the fact that GTK+ delete is now invariant of
normalization form is certainly more correct than otherwise.
For example, I would say European and Korean languages are not favor
with this feature. Actually AFAIS, only scripts like Indic, Thai etc
may like this implementation.
Can we do the opposite? We can disable by default, but enable the
script we found that required that feature?
I don't think you've tried it for European languages...
The code in Pango changes behavior script by script; currently
#define BACKSPACE_DELETES_CHARACTER(wc) (!LATIN (wc) && !CYRILLIC (wc)
&& !GREEK (wc))
For Korean, I suspect if we had sufficiently good input
method integration, user's would prefer delete to work
Jamo by Jamo, but that probably isn't the case now.
(That is, without this change, if I type H-A-N <delete>
then just the N disappears. But if I move after a syllable
'han' and type <delete> then the whole syllable disappears.
With this change, the two cases are consistent, except that
when the N is deleted, I'm not in compose mode, so if I type
N again it starts a new syllable. What should happen is that
deleting the N should put me back into compose mode. I'm
not really sure how to get that working with the current
Can you file a new, separate bug against Pango to modify the
the backspace_deletes_character assignment to skip Korean?
I don't want to retitle and reassign this bug,that's just