Прочитать текущий цвет текста в xterm

Я пишу разные утилиты, и мне очень нравится цветной текст. Ничего особенного, просто использую escape-последовательности. Я создал простой класс с функцией pprint (msg, color). После того, как я нашел здесь коды , ,

Проблема, с которой я столкнулся, заключается в том, что я могу отключить цвет после печати. Например, предположим, что пользователь запускает мою программу, которая печатает почти все в цвете терминала по умолчанию, но возникает ошибка, и я хочу напечатать ошибку красным цветом. Я добавляю к сообщению об ошибке префикс '\ 033 [0; 32m', и это сообщение отображается красным цветом. К сожалению, весь текст красный, пока я его не изменю. Обычно это нормально, когда моя программа работает, потому что я знаю, какого цвета должны быть сообщения. Однако цвет остается после завершения моей программы. По сути, я хотел бы прочитать текущий цвет при запуске моей программы и восстановить его после завершения. Таким же образом, как скрипты восстанавливают pwd при выходе.

Как мне прочитать текущую escape-последовательность?

Система: По сути, я хотел бы прочитать текущий цвет при запуске моей программы и восстановить его по завершении. Так же, как скрипты восстанавливают pwd при выходе.

Как мне прочитать текущую escape-последовательность?

Система: По сути, я хотел бы прочитать текущий цвет при запуске моей программы и восстановить его по завершении. Таким же образом, как скрипты восстанавливают pwd при выходе.

Как мне прочитать текущую escape-последовательность?

Система: Red Hat 5.x Баш Python 2.3

Спасибо за помощь.

18
задан fandingo 2 December 2010 в 06:59
поделиться