emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Compositions and bidi display (was: bug#5977: 24.0.50; Lao HELLO is


From: Eli Zaretskii
Subject: Re: Compositions and bidi display (was: bug#5977: 24.0.50; Lao HELLO is incorrectly displayed)
Date: Fri, 23 Apr 2010 21:52:05 +0300

> From: Kenichi Handa <address@hidden>
> Cc: address@hidden, address@hidden
> Date: Wed, 21 Apr 2010 11:32:58 +0900
> 
> I've just build the trunk code on GNU/Linus, and found that all
> characters displayed by composition are incorrect.

Only when bidi-display-reordering is turned on (etc/HELLO does that
automatically).

> Here's a brief explanation about control flow.

Thanks, that part was quite clear from the code.  I now fixed display
of composed characters from L2R scripts when bidi-display-reordering
is set to non-nil.

Where I really need help is in getting compositions to work when text
is reordered.  Is it true that composition_reseat_it and its
subroutines need to see the to-be-composed characters in strict
logical order, i.e. left to right?  Or can they also work if they see
the characters to be composed in the reverse order?

Also, what does this condition (in next_element_from_composition)
check?

      if (it->c < 0)
        {
          IT_CHARPOS (*it) += it->cmp_it.nchars;
          IT_BYTEPOS (*it) += it->cmp_it.nbytes;

If the meaning of the test is that there's no composition at the
iterator's position, then why do we skip some of the buffer text under
this condition?

Thanks for your help.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]