### 22.5 Output Styling

GDB can style its output on a capable terminal. This is enabled by default on most systems, but disabled by default when in batch mode (see Mode Options). Various style settings are available; and styles can also be disabled entirely.

`set style enabled ‘`on|off`’`

  Enable or disable all styling. The default is host-dependent, with most hosts defaulting to ‘`on`’.

`show style enabled`

  Show the current state of styling.

`set style sources ‘`on|off`’`

  Enable or disable source code styling. This affects whether source code, such as the output of the `list` command, is styled. Note that source styling only works if styling in general is enabled, and if GDB was linked with the GNU Source Highlight library. The default is ‘`on`’.

`show style sources`

  Show the current state of source code styling.

Subcommands of `set style` control specific forms of styling. These subcommands all follow the same pattern: each style-able object can be styled with a foreground color, a background color, and an intensity.

For example, the style of file names can be controlled using the `set style filename` group of commands:

`set style filename background color`

  Set the background to color. Valid colors are ‘`none`’ (meaning the terminal’s default color), ‘`black`’, ‘`red`’, ‘`green`’, ‘`yellow`’, ‘`blue`’, ‘`magenta`’, ‘`cyan`’, and‘`white`’.

`set style filename foreground color`

  Set the foreground to color. Valid colors are ‘`none`’ (meaning the terminal’s default color), ‘`black`’, ‘`red`’, ‘`green`’, ‘`yellow`’, ‘`blue`’, ‘`magenta`’, ‘`cyan`’, and‘`white`’.

`set style filename intensity value`

  Set the intensity to value. Valid intensities are ‘`normal`’ (the default), ‘`bold`’, and ‘`dim`’.

The `show style` command and its subcommands are styling a style name in their output using its own style. So, use `show style` to see the complete list of styles, their characteristics and the visual aspect of each style.

The style-able objects are:

`filename`

  Control the styling of file names. By default, this style’s foreground color is green.

`function`

  Control the styling of function names. These are managed with the `set style function` family of commands. By default, this style’s foreground color is yellow.

`variable`

  Control the styling of variable names. These are managed with the `set style variable` family of commands. By default, this style’s foreground color is cyan.

`address`

  Control the styling of addresses. These are managed with the `set style address` family of commands. By default, this style’s foreground color is blue.

`title`

  Control the styling of titles. These are managed with the `set style title` family of commands. By default, this style’s intensity is bold. Commands are using the title style to improve the readability of large output. For example, the commands `apropos` and `help` are using the title style for the command names.

`highlight`

  Control the styling of highlightings. These are managed with the `set style highlight` family of commands. By default, this style’s foreground color is red. Commands are using the highlight style to draw the user attention to some specific parts of their output. For example, the command `apropos -v REGEXP` uses the highlight style to mark the documentation parts matching regexp.

`tui-border`

  Control the styling of the TUI border. Note that, unlike other styling options, only the color of the border can be controlled via `set style`. This was done for compatibility reasons, as TUI controls to set the border’s intensity predated the addition of general styling to GDB. See TUI Configuration.

`tui-active-border`

  Control the styling of the active TUI border; that is, the TUI window that has the focus.