Re: [PATCH] [gdb/cli] Document \001 and \002 usage for set prompt

Tom de Vries
2025-07-19T16:08:01Z

On 7/19/25 08:47, Eli Zaretskii wrote:
>> From: Tom de Vries <tdevries@suse.de>
>> Date: Sat, 19 Jul 2025 08:16:36 +0200
>>
>> diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
>> index 35b770f8138..0a2d34756eb 100644
>> --- a/gdb/doc/gdb.texinfo
>> +++ b/gdb/doc/gdb.texinfo
>> @@ -27659,6 +27659,16 @@ or a prompt that does not.
>> @item set prompt @var{newprompt}
>> Directs @value{GDBN} to use @var{newprompt} as its prompt string henceforth.
>>
>> +For example, this will set a blue-colored ``(gdb)'' prompt:
>> +
>> +@smallexample
>> +set prompt \001\033[0;34m\002(gdb)\001\033[0m\002
>> +@end smallexample
>> +
>> +It uses ``\001'' and ``\002'' to begin and end a sequence of
>> +non-printing characters, to make sure they're not counted in the string
>> +length.
>
> Please use @samp to quote \001 etc., not literal quotes.
>
> OK with that nit fixed.
>

Hi Eli,

thanks for the review, pushed with that nit fixed.

> P.S. Does this work on MS-Windows console as well?
>

A good question.

I suppose the \001\002 part should work, because it's handled by
readline (assuming readline is always used).

The \033 bits, probably not. I read this wikipedia article (
https://en.wikipedia.org/wiki/ANSI_escape_code ) which has some info on
that, so a current powershell should work AFAIU.

I tried to test this on my windows laptop, but I didn't manage to run
gdb on it in either windows console or powershell, though the cygwin
shell did work.

Thanks,
- Tom

> Approved-By: Eli Zaretskii <eliz@gnu.org>