2015-03-24 7 views
0

Когда я иду на площадку, и я пишу let test = "\u{062F}\u{0625} Hello", я получаю Hello دإ (который, кстати, когда я копирую из консоли вывода, чтобы здесь я получаю دإ Hello)Деактивировать локаль юникод символов

Кажется, автоматический (скажите, если я ошибаюсь).

Мой вопрос заключается в том, чтобы отключить его, так что у меня есть Hello دإ когда я Println (тест)

ответ

1

Это интерфейс делает правильно. В частности, Cocoa знает, как обрабатывать BIDI или двунаправленный текст. Веб-сайты обычно не работают. В двунаправленной строке он начинается с первого порядка языков, а затем устанавливает следующий диапазон подстроки языка в строке, но в его языковом порядке. RTL Rifght to Left или LTR слева направо. Вертикальная добавляет сложность, которая еще не так проста. Пользовательский интерфейс игровой площадки знает, что делать, потому что это AppKit

+0

Так что нет возможности его деактивировать? – Nico

+0

Нет, если вы не контролируете приложение. Поэтому, если вы создаете приложение, вы можете установить RTL/LTR для своих текстовых полей или более глобально настроить локаль приложения, хотя на iOS вам может понадобиться установить локаль, если ваше приложение локализовано. вы можете попробовать изменить порядок символов в строке. Или используйте NSAttributedString и установите атрибуты на игровой площадке. Простая строка не знает многого, поэтому детская площадка регистрирует ее, однако детская площадка регистрирует ее. Если вы считаете, что это неправильно, напишите ошибку с яблоком. – uchuugaka

+0

ладно спасибо. И действительно не нужно указывать ошибку. Я буду доверять яблоку на этом;) – Nico

Смежные вопросы