[Fribidi-discuss] resolution of neutral characters

Tomas Frydrych tomas at frydrych.uklinux.net
Thu Apr 10 15:27:04 EST 2003


Hi Dov,

Thanks Dov. After some thought, I think the LRM marker seems to be 
the best solution in a wordprocessor. My immediate problem is that 
the bidi algorithm used by MS Word will resolve this as the user 
expects, not as the Unicode algorithm prescribes, so that if I import 
a Word doc into AbiWord it goes pear shape; it should be fixable by 
LRM as well, once I work out how exactly the Word algorithm works.

Tomas


> Hi Tomas,
> 
> This is indeed according to the BiDi algorithm. The closing
> paranthesis after the k is resolved according to the base direction,
> that is determined by the A. You can always resolve this by either
> putting a LRM after the closing parenthesis or by enclosing the whole
> log(k) in a LRE PDF pair. The question though is what is the best user
> interface solution to this problem in a word processor... A user may
> be taught that he always has to put a LRM after an equation, but if
> she did not and see the mess of "B (log(k A" it becomes quite non-
> intuitive that the solution is to place the cursor after the first (
> and enter a LRM... Another solution is to enter equation mode that
> should always be in a LRE/PDF pair. I really don't have any easy
> solution. How do other systems solve it?
> 
> Dov
> 
> On Thu, Apr 10, 2003 at 06:17:24PM +0100, Tomas Frydrych wrote:
> > Hi everyone,
> > 
> > I think I might have found a bug in FriBidi's handling of neutral
> > characters. I am not sure whether this is a bug in FriBidi, or
> > whether this is a problem with the Unicode algorithm, but one way or
> > another the resulting behaviour is unintuitive.
> > 
> > The following string, where capitals represent RTL characters,
> > 
> >     "A log(k) B"
> > 
> > resolves to
> > 
> >     "B (log(k A"
> > 
> > I think that the correct visual string should be
> > 
> >     "B log(k) A"
> > 
> > Obviously, the closing parenthesis is presently resolved to an RTL
> > character (embeding level 1), while the opening parenthesis is
> > treated as LTR character (level 2). It seems to me that matching
> > pairs of parentheses, braces, etc., should always be resolved to the
> > embeding level of the opening element of the pair.
> > 
> > Tomas
> > 
> > 
> > -------------------------------------------------------
> > This SF.net email is sponsored by: Etnus, makers of TotalView, The
> > debugger for complex code. Debugging C/C++ programs can leave you
> > feeling lost and disoriented. TotalView can help you find your way.
> > Available on major UNIX and Linux platforms. Try it free.
> > www.etnus.com _______________________________________________
> > Fribidi-discuss mailing list Fribidi-discuss at lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/fribidi-discuss
> 
> 
> -------------------------------------------------------
> This SF.net email is sponsored by: Etnus, makers of TotalView, The
> debugger for complex code. Debugging C/C++ programs can leave you
> feeling lost and disoriented. TotalView can help you find your way.
> Available on major UNIX and Linux platforms. Try it free.
> www.etnus.com _______________________________________________
> Fribidi-discuss mailing list Fribidi-discuss at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/fribidi-discuss
> 






More information about the FriBidi mailing list