Терминалы ANSI работают на гораздо более низком уровне, что (среди прочего) позволяет им работать по всей сети. Как правило, вы хотите запустить буфер в top выходного потока, чтобы вы могли вспомнить, какой символ находился в этой ячейке, и снова записать его с новым цветом.
Также обратите внимание, что существует код VT400, DECCARA, который позволяет изменять не -цветные атрибуты (полужирный и т. Д.), Но он широко не поддерживается. Просто используйте буфер.