Text Alignment of (Right to left language such as Persian)

Hi Colleagues,
I have created a form that is in three languages. When I change the language from English to Persian, the text in Persian stays in the Left to Right direction - while it should be in the Right to Left format. However, as I removed the constraint and hint messages, that were in all three languages, the issues resolved. One of our external stakeholders solved the issue without removing the constraint and hint messages and said I change the text direction to RTL format. but I don’t see that option in Kobo. Can anybody please help me?

Welcome to the community @danishjownaqibullah! Maybe this Enketo blog Full Right-to-left Language Support should help you solve your issue.

Thank you, but that blog did not help me to sort out the issue. I have followed all the steps but still no luck.

Could you share your xlsform with the community? Maybe someone literate with Persian should be able to help you solve your issue.

By the way, did you mix, Persian with English? If you mix it up, it should not work.

Yes, within some sentences, both Persian and English exist in Persian translation.
Unfortunately, I am not able to upload the sheets. I do not have permission.

Have you tried deleting the English scripts from your xlsform where the Persian translation should stay. Maybe this should solve your issue. If you are still not able to fix, please feel free to share your xlsform with the community. You could do the same by refreshing your forum page.

Please find this one which has issue:
R3_service_assessments_Dec_2020_finalOld.xlsx (145.5 KB)

And this one which has no issue:
R3_service_assessments_Dec_2020_final.xlsx (145.8 KB)

Ah. I find multiple syntax issues within your xlsform. Try validating them with this online validator. It should help you identify the syntax error that is present within your xlsform. Maybe we could deal with your translation issue once you clean your syntax errors.

Some of them that i noticed are as follows:

  • You are using spaces within a variable name (which is not allowed).
  • You are starting your variable name with a number (which is not allowed).
  • You are using the same variable names multiple times e.g. other (which is not allowed).


  1. You also need to have a translation in the very first text element of your form,. Best provide a translation for the first variable in its label and in its hint field.
  2. For Preview, you may need to change the account language also (top menu on the right), not only the form.

You may better test your form also for the language with online validator
There you only need to change the form language.

You CAN use mixed language, but to get correct layout and behaviour is tricky. For example you may need to reference inversed as … {Name}$ … << with Right-to-left.