Abdelrazak Younes wrote:
Dov Feldstern wrote:
Abdel, you're so touchy!
It was not meant to sound touchy, sorry :-)
:)
I'm willing to accept commit access, of course, and I'm even willing
to be in charge of this stuff, at least for now. But I have very
little time that I can actually put into LyX --- this week I've been
putting in way more than I can afford --- so I don't want my getting
commit access to be under any false pretenses. But if it helps, even
if I will only commit from time to time, then sure, I'd be happy to
get access. JMarc?
Commit access does not mean that you have to work more, don't worry. It
just means that _we_ get less work ;-)
And it is a hint also that you are willing to _stay_; and that is even
more important to us.
Good! Then yes, I'd be happy to accept.
About you reverseDirection() patch, I am not sure that all RTL users
will agree with you that the outer paragraph should drive the cursor
movement. As I said, this is fine for small insets but not for
multi-paragraph insets. I think we should try to implement something
similar to Elazar's patch for mathed instead. If you can't do that
then I'll apply your patch temporarily.
Okay, I think that I have a better example now for explaining why I
think my approach is correct:
Using the current version (with Elazar's patch already in), try moving
the cursor in the attached document (a math inset inside a footnote).
It gets stuck again in the math inset, even after Elazar's patch,
just because the math inset is now one level deeper!
But if we fix the navigation problem in the footnote, won't this
automatically solves this problem too? The way I see it, the problem
here is that the navigation in the footnote should be LTR, independently
of the outer paragraph.
No, I tried this both without and with my patch, and it's problematic
either way. Because my patch doesn't really change the direction of the
footnote (and that's what Elazar's patch is looking at) --- it just
changes the way we interpret arrows within it. But inside the math
inset, the arrows are being interpreted totally independently of the way
the footnote is interpreting them.
Understand me, I know there are problems but maybe we could try a bit
more fine grained than your solution?
Fine grained is not the issue. On the contrary, what we need is
consistency, that's the only thing that keeps that cursor moving!
We could use heuristics, for example: for single-paragraph insets,
interpret the arrows my way, and for multi-paragraph insets, interpret
it according to the local paragraph's language. The logic would be that
for short insets, we will often really just want to "move through"; with
longer insets, the local conditions are already more important. But
we'll still get stuck when exiting such an inset.
To me, this sounds like overkill, and I think we're trying to solve an
issue which really isn't problematic...
Ask Elazar, I imagine that he would agree with me that that's not the
desirable situation. There's no way around it: you have to be
consistent with how you interpret the arrow keys throughout the
paragraph, as soon as the interpretation is relative to the level
you're at --- you get stuck. If instead of the isRTL() method used in
that patch, we would use the function I'm proposing, which looks at
the outermost paragraph, I believe the problem would not still exist.
I'll try your patch and report back.
I'll add fix this and add it to my suggested patch, I'll also fix the
spacing issues that Andre' pointed out, we can wait to hear Elazar's
opinion if you want --- but I really think that what I'm suggesting is
the way that most bidi users would prefer.
OK.
Abdel.
Dov