This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: diag_printf refuses to print ANSI escape sequences?


On 2007-05-26, Sergei Gavrikov <w3sg@SoftHome.net> wrote:
> On Sat, May 26, 2007 at 03:19:42PM +0000, Grant Edwards wrote:
>> In the "not a big deal" department...
>> 
>> I'm trying to send ANSI escape sequences using diag_printf, and
>> diag_printf refuses.  If I put the escape character in the format
>> string it says 
>> 
>>  <Bad format string: 8055F18 : 0 0 2 807F0D8 DDD9BFFD FB93FFDC 8055758
>>  FB93FFDC>
>> 
>> If there's an escape character in a string that is to be printed using
>> the "%s" format, it says: 
>> 
>>  <Not a string: 0x8055F20>
>> 
>> I understand that it's useful to attempt to avoid printing random
>> binary garbage, but I would think that ASCII ESC might be allowed in
>> strings.
>>  
>> I've found that insterting the escape characters using %c works, but
>> that's a bit awkward.
>  
> There are nice diag_dump_buf* functions in the eCos infra layer
> (cyg/infra/diag.h).  I do use that.

I'm aware of the daig_dump_buf fuctions, but I don't see how
they solve my problem.  AFAIR, they dump out buffer contents in
hex.  What I'm trying to do is:

 diag_printf("\033[34mBlue Text \033[31mRed Text \033[mNormal Text\n");

diag_printf refuses to do that, so I have to do something like
this instead:

 diag_printf("%c[34mBlue Text %c[31mRed Text %c[mNormal Text\n",033,033,033);

and that seems awkward to me.

One could argue that embedding escape seqences in strings is a
bit hackish...

-- 
Grant Edwards                   grante             Yow! NEWARK has been
                                  at               REZONED!!  DES MOINES has
                               visi.com            been REZONED!!


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]