> When I try to run a python program that uses urwid[1] to provide a > curses ui is, strange things happen. All the text is messed up, which > continues after exiting the program. A comment in the AUR verifies that > someone else has had the same problem.[2] This does not happen in st > 0.4.1. > To reproduce this bug, run any program that uses urwid, such as > wicd-curses.
I can see that the problem is that the charset is shifted to the graphic set. After using git bisect I can see that the offend commit is 7a4eefe, that basically add support for G0 and G1. After running wicd-curses, I can see that it print ^[)0, that means shift G0 to the graphic charset, so I think st is making the correct here. Another point is the terminfo definition. I can see that we have enacs and smacs with '\E(0', so I am not sure what sequence wants to send wicd-curses, and in fact I don't know exactly the difference between them: - enacs: enable alternate char set - smacs: start alternate char set I will take a look to my terminfo book later at home, but I think this is a problem related to the implementation of urwid. Regards, -- Roberto E. Vargas Caballero