Как правильно проверить поддержку Unicode в реализации Smalltalk? - PullRequest
6 голосов
/ 31 июля 2011

Учитывая любой вкус Smalltalk, как мне следует проверить, поддерживается ли Юникод? В случае отсутствия поддержки, как я могу определить, на каком уровне отсутствует (VM, шрифт, конвертер и т. Д.)?

Ответы [ 2 ]

5 голосов
/ 31 июля 2011

На уровне виртуальной машины вы можете попробовать Character codePoint: 256 или Character codePoint: 65536 (некоторые Smalltalks могут использовать value: вместо codePoint: все еще).API конвертера также различаются между диалектами, но есть вероятность, что если виртуальная машина поддерживает Unicode, то будут конвертеры.

Насколько мне известно, ни один Smalltalk полностью не поддерживает алгоритмы Unicode (сворачивание регистра, свойства символов и т. Д.), но некоторые могут поддерживать двунаправленный текст.Например, GNU Smalltalk получает это бесплатно от GTK + и Pango.

4 голосов
/ 31 июля 2011

Полагаю, вы хотите проверить вручную определенный аромат или ароматизаторы, которые вы собираетесь использовать, потому что я не думаю, что есть какой-либо автоматизированный способ. На ум приходят две вещи. Сначала прочитайте документацию. Во-вторых, попробуйте ввести в окно текст с произвольными символами Юникода и посмотреть, отображаются ли они. Если они это сделают, ты в порядке. Если они этого не делают, то возникает интересный вопрос, может ли быть проблема с вводом, шрифтами, доступными на конкретной платформе, базовой способностью представлять символы или чем-то еще. Вы также можете попробовать поискать API-интерфейсы для работы с конкретными кодировками (поддержка Unicode - довольно расплывчатый термин) и попробовать прочитать и записать файл, содержащий некоторые из этих символов. Или вы можете спросить кого-нибудь, поддерживает ли тот или иной интересующий вас интерес особенности, которые вы хотите использовать.

Для VisualWorks ответ, вероятно, да, но это будет зависеть от того, что именно вы хотите сделать. Например, символы с языков справа налево могут отображаться, но редактирование текста с ними не будет работать очень хорошо.

...