Support styling on native MS-Windows console
gdb/ChangeLog: 2019-03-08 Eli Zaretskii <eliz@gnu.org> PR/24315 * utils.c (can_emit_style_escape) [_WIN32]: Don't disable styling on MS-Windows if $TERM is not defined. * cli/cli-style.c: Set cli_styling to 1 in the MinGW build. * posix-hdep.c (gdb_console_fputs): * mingw-hdep.c (rgb_to_16colors, gdb_console_fputs): New functions. * ui-file.h (gdb_console_fputs): Add prototype. * ui-file.c (stdio_file::puts): Call gdb_console_fputs, and fall back to fputs only if the former returns zero.
This commit is contained in:
parent
4639b61ae3
commit
e4adb93903
7 changed files with 237 additions and 1 deletions
10
gdb/utils.c
10
gdb/utils.c
|
@ -1445,8 +1445,18 @@ can_emit_style_escape (struct ui_file *stream)
|
|||
|| !ui_file_isatty (stream))
|
||||
return false;
|
||||
const char *term = getenv ("TERM");
|
||||
/* Windows doesn't by default define $TERM, but can support styles
|
||||
regardless. */
|
||||
#ifndef _WIN32
|
||||
if (term == nullptr || !strcmp (term, "dumb"))
|
||||
return false;
|
||||
#else
|
||||
/* But if they do define $TERM, let us behave the same as on Posix
|
||||
platforms, for the benefit of programs which invoke GDB as their
|
||||
back-end. */
|
||||
if (term && !strcmp (term, "dumb"))
|
||||
return false;
|
||||
#endif
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue