ODK collect 1.15.1 right align issue

Hi,
we are making a form in Urdu it is developed successfully. But when we check it on ODK collect v1.15.1 my questions are not right aligned. It was working fine previous versions.

When we convert xls form into xml through http://opendatakit.org/xlsform/ it throws error if we use label::urdu to specify right to left language.

please suggest.

I took a quick look and everything works well for me.
If you want to have RTL language (questions right aligned) you need to choose Urdu language in ODK Collect General Settings -> User Interface -> Language. That option in xls forms you are talking about is just to support questions in various languages and it doesn't change the way questions are displayed (RTL/LTR)

Thanks for information, But it also changes the language of ODK collect, i do not want this to be happened.

Please suggest some other solution if any.

So you want to have let's say English as a general language and Urdu and English in a form?
After switching to Urdu (in a form) you expect that questions are aligned to right.
Am I right?

Do you claim it worked well in older versions?

Yes, thats right.
In older versions we were using label::urdu which works fine for us. In some times we did not even use label::urdu and it was also working fine for us.
But after updated version we are facing this issue.

Could you attach a form that worked in older versions but now causes problems?

Thanks for reporting this, @Fahad_Ghous. I have confirmed the problem and filed https://github.com/opendatakit/collect/issues/2330 with an attached form that demonstrates the problem so you do not need to share yours.

Independent of this issue, I am curious to know why you don't want to change the user interface language to Urdu. Is it because the translations are bad or incomplete? Did you know you can suggest changes to those at https://www.transifex.com/opendatakit/?

Thanks helene for identifying the issue and supporting the query.
Oh sorry it does not mean that translation is bad but now the concerned is that some times words in english are easy to convey and understand due to use of English as official language. Urdu translation of these words is little bit complex.
Hope you understand

1 Like

@Fahad_Ghous Unfortunately this is a little bit more complex than I had initially hoped. The change we made in 1.15.x is to consistently use the locale's text direction. This generally leads to a more consistent experience when using a right-to-left language but we hadn't considered a case where the user would intentionally keep a left-to-right language for the application but use a right-to-left language. I don't know how common that is but I do understand what you said about wanting to keep the overall interface in English.

Prior to 1.15.x, RTL text defined in a form would be displayed right-to-left because it would have an RTL character in the form. However, answer prompts would be left-to-right. For example:
23%20AM

Now all alignment is consistent for with the locale language.

Collect set to English:
34%20AM

Collect set to Arabic (answer direction depends on keyboard language):
37%20AM

One idea @Grzesiek2010 has come up with and tried out is to use the language code in the form (the part after label:: for example) to determine what direction to show the text in. Code available at https://github.com/opendatakit/collect/pull/2376. For this to work, you would need to include a machine-readable language code. For Urdu, that would mean a form change to change label::urdu to label::Urdu (ur) and pushing out that form change. Would that work for you? Read more about language codes at http://xlsform.org/en/#multiple-language-support.

In your case, are answers provided in Urdu or English?

An alternative we're exploring is to go back to using any directionality characters in labels or hints to determine directionality just for those.

Thanks @LN for your support.
I wanted to say if we can improve urdu language for specific places.
like we can use translation "جنرل سیٹنگز" for General settings option in menu. i would suggest more words after working in the translations.

@Fahad_Ghous, you can improve those app-specific translations at https://www.transifex.com/opendatakit. If you run into problems with Transifex, post at https://forum.getodk.org/c/development/translation.

Thanks @yanokwa.
i wanted to know how and when my updated translation will be displayed on ODK collect App.

New translations are always added before each release (which we have at least one every two months). So if you do that know it should be available in v1.17.0 (in September maybe October).

2 Likes