I see a command called \ifjoinable, there is no explanation but I guess that you are hardcoding "joignable" and "non-joignable" characters. This is a bad approach since some characters can be joignable or non-joignable depending on their semantics. So you should certainly not hardcode this property. The advantage of OTPs (and hence also of the lua approach) over XeTeX is that the "rules" can be redefined at any moment to suit particular needs.

Le 27 déc. 08 à 11:08, وفا خلیقی، Vafa Khalighi a écrit :

<test.pdf>

--
+-----------------------------------------------------------------------+
| Yannis Haralambous, Ph.D.      yannis.haralambous@telecom-bretagne.eu |
| Directeur d'Études                      http://omega.enstb.org/yannis |
|                                             Tel. +33 (0)2.29.00.14.27 |
|                                             Fax  +33 (0)2.29.00.12.82 |
| Département Informatique                                              |
| TELECOM Bretagne                                                      |
| Technopôle de Brest Iroise, CS 83818, 29238 Brest CEDEX 3, France     |
| Coordonnées Google-Earth : 48°21'31.57"N 4°34'16.76"W                 |
+-----------------------------------------------------------------------+
                            ...pour distinguer l'extérieur d'un aquarium,
                                           mieux vaut n'être pas poisson

                           ...the ball I threw while playing in the park
                                          has not yet reached the ground

              Es gab eine Zeit, wo ich nur ungern über Schubert sprechen,
           nur Nächtens den Bäumen und Sternen von ihm vorerzählen mögen.