2015-05-21 5 views
1

здесь кодПлохого форматирования арабского текста при смешивании с 1%

<code> 
    <source> %1 added %2 to the group </source> 
    <translation type="unfinished"> 1% أضاف %2 للمجموعة</translation> 
</code> 

Проблема заключается в том, что я хочу, чтобы текст, который будет отменен в переводе, так что вместо «1% أضاف% 2 للمجموعة», я хочу иметь: [للمجموعة ("percent" 2) أضاف ("процентов" 1)]

По какой-то причине даже блокнот не позволяет помещать% 1 в крайнем правом углу арабского предложения, потому что арабский справа налево, так что, возможно, вы не можете начать предложение с% 1.

Есть ли обходные пути для этого?

ответ

1

Необходимо направить направление записи для цифр и символа процента. Все они являются символами слева направо. Это связано с тем, что начало строки «1%» написано слева. После этого арабские буквы все справа налево, а «2%» снова слева направо, но сразу возвращается к арабскому справа налево. Таким образом, выход идеально подходит.

Для достижения того, что вы намерены, вам необходимо направить направление письма справа налево в начале строки. Добавить символ RTL (& RLM, или U + 200F в Unicode) до первого запуска позиции вашей строки и отображает следующим образом:

‏1% أضاف %2 للمجموعة 

Вставка больше символов RTL в решающие позиции (непосредственно перед числами и проценты), вы можете сделать это следующим образом:

‏1‏% أضاف ‏%2 للمجموعة