o comportamento da maioria é codificado. O código-fonte tem vários fragmentos como este para análise após um caractere de escape ser recebido:
if ((ch == 033) && (Most_V_Opt == 0))
{
while ((ch == 033)
&& (0 == most_parse_color_escape (&b, e, NULL))
&& (b < e))
ch = *b++;
}
Basicamente, ele diz que se encontrar um caractere de escape ( 033 ) e a opção -V não estiver definida, procure sequências de escape de cor ANSI.
Todas as operações de limpeza começam com um caractere de escape, então a maioria não fará o que for solicitado.
A propósito, vejo que Davis fez uma mudança alguns dias atrás como uma solução alternativa. Em última análise, isso estará em uma versão empacotada ...
Author: John E. Davis 2018-07-11 06:26:02
Committer: John E. Davis 2018-07-11 06:26:02
Parent: 97befd7b984520e80475bb1cb857b35650755a15 (pre5.1-20: Added support for Home/End keys)
Branches: master, remotes/origin/master
Follows:
Precedes:
pre5.1-21: Added a work-around for programs that try colorize the output using the clear-to-end-of-line escape sequence (ESC[K) without regard for the value of isatty(fileno(sdout)).
+21. src/line.c: Added a work-around for programs that try colorize the
+ output using the clear-to-end-of-line escape sequence (ESC[K)
+ without regard for the value of isatty(fileno(sdout)). Most will
+ ignore ESC[K unless invoked with -v.