Definitely the non-magic solution: If you enter a space it gets the
direction (RTL or LTR) of the current font, and is drawn on screen
according to that direction (place and underlining), and cursor navigation
follows that direction.
It should not be possible to enter two consecutive spaces (one in RTL and
the other in LTR) at a direction boundary.

That sounds as a good solution: you can enter consecutive space, but the EPM removes them if you move cursor. So the moment you press space and continue with an RTL word additional spaces are allowed. But if you press space and then decide differently it's taken away by EPM. Does it sound reasonable?

I will implement that approach, shouldn't be very hard.

This is IMO the best approach: Users see on screen exactly whether a space
is RTL or LTR. Therefore they know how the cursor will behave when
navigating. Removing the direction property from spaces might look more user friendly at first glance, but the problem then is that you have to perform some magic in the code that quickly gets so complicated that no developer understands it anymore and/or it produces strange results in some
corner cases.

My opinion... this jumping makes me crazy

Stefan


Attachment: PGP.sig
Description: Signierter Teil der Nachricht

Reply via email to