Abdelrazak Younes wrote:
Dov Feldstern wrote:
Hi!
Another issue with the changes recently made to the encodings. This
one is actually not a bug, perhaps, rather an "over-fix".
Maybe what you describe is related to this code in
LyXText::setCurrentFont(LCursor & cur) in text2.C:720:
It's possible that this is related. As I said, I've tried to steer clear
of the internals of the bidi algorithm so far, and certainly the whole
issue with "levels" in the bidi algorithm would be very relevant to the
issue we're discussing.
However, I feel that before going to the code to look for the bug, I'd
like to understand what exactly the correct behavior should be ---
something which I'm not yet clear about at all...
if (pos > 0) {
if (pos == cur.lastpos())
--pos;
else // potentional bug... BUG (Lgb)
if (par.isSeparator(pos)) {
if (pos > cur.textRow().pos() &&
bidi.level(pos) % 2 ==
bidi.level(pos - 1) % 2)
--pos;
else if (pos + 1 < cur.lastpos())
++pos;
}
}