Tue Apr 27 19:12:53 EST 2004
procedures need to be able to call an Arab shaping routine "from the
middle" of their work.
Similarly, a line-breaking procedure may need to be called "from the
middle" (i.e. after computing embedding levels and before actually
In order to reduce the amount of code, which a particular installation
absolutely must have, I suggest that FriBidiEnv be extended to have also
one or more function pointers.
Those function pointers (to be defined by the Arabs and the Iranians, as
their languages are more demanding than Hebrew) will be NULL (when they
are not relevant), or initialized to point at the corresponding functions
(from libraries independent of libfribidi) by the function, which enables
Arabic shaping, after FriBidiEnv is initialized.
Then the core FriBidi algorithms will (under control of flags and
NULLity tests) invoke those functions at the appropriate times during
execution of the algorithms.
Such vectors may also help in integration of FriBidi with text editing
WARNING TO SPAMMERS: see at http://www.zak.co.il/spamwarning.html
More information about the FriBidi