Спасибо за помощь. Локаль у меня действительно utf8. Но я думал, те коды, что выдаёт питон - utf8, а это оказалось utf16. Кроме того, у него оказывается две кодировки "по умолчанию": та которую он применяет для кавычек без дополнительных значков(у меня ascii), и та, которую он использует внутри себя, например для перекодирования, - utf16.
Вообщем, родился скрипт. Хавает любую консольную интерактивную прогу. Может перекодировать вход и выход (теперча ispell c koi8 и локалью utf8 у меня работает), сохранять и загружать историю ввода пользователя (это для gdb). Можно например сделать надстройку над gdb добавить свои команды и т.п. Хотя возможно это ещё один велосипед. Полторы сотни строк.
http://khral.h16.ru/python/wrapper/wrapper.py.html