◐ Shell
clean mode source ↗

Message 92019 - Python tracker

First, make sure that your Python3 build uses libncursesw and not
libncurses, because libncursesw supports unicode, whereas libncurses
doesn't... On UNIX, use the following command to check this:

ldd $(./python -c "import _curses; print(_curses.__file__)")|grep curses

> Note that the output here always seems to be utf-8, 
> which is plain wrong.

Yes, addstr() always uses utf8 to convert unicode to bytes. It's wrong
if the terminal uses a different charset. But I'm not sure that using
bytes is a better idea: since you would like to print characters,
unicode is the right type.

An idea would be to use a configurable charset. Eg. add a 'charset'
attribute to a window (or to the module).