Я пытаюсь показать много текста Юникода в моем приложении curses. Моя машина разработки MacOSx 10.6, и я использую питон по умолчанию, поставляемый с Apple.Mac версия Python не поддерживает UTF-8 в модуле curses?
Python 2.6.1 (r261:67515, Feb 11 2010, 00:51:29)
[GCC 4.2.1 (Apple Inc. build 5646)] on darwin
Когда я добавил текст Юникода к экрану, экран все испортился. Я попытался найти решение Google, и другие люди предложили связать модуль _curses с библиотекой libncursesw вместо библиотеки libncurse.
Я проверил мой путь, и я нашел (см ниже) в/Opt/местные/Библиотека
libncurses++.a
libncurses++w.a
libncurses.5.dylib
libncurses.a
libncurses.dylib
libncursesw.5.dylib
libncursesw.a
libncursesw.dylib
Как проверить, какая библиотека моя ругань модуль связан, и как я могу связать с другой библиотеке? Можно ли это сделать без перекомпиляции моего Python?
Это немного смущает, но я считаю, что решение правильно печатать Юникод в моей среде. Я думаю, что в какой-то момент я установил библиотеки curses из Macports и забыл, что у меня это уже есть.
Проблема в том, что текст не отображался в первый раз, потому что мне нужно установить языковой стандарт в моей программе python. Я думал, что региональные настройки будут наследоваться от оболочки я бегу, а просто добавил две строки кода фиксированная моя проблема:
import locale
locale.setlocale(locale.LC_ALL,"")
Хотя, это хорошо, чтобы знать, где питон внешние библиотеки жизни и как проверить их ,
Я попытался связать libcurses.dylib в/usr/lib с тем, который я нашел в/opt/local/lib, но результат был таким же ... Так что пока не удалась ~ – Patrick
Удивительно, но после того, как я добавил магия двух строк, как python (версия Apple), так и python2.6 (версия Macport) отображают unicode правильно. – Patrick