Bold
AI-Generated Content
This page was generated with the assistance of AI and may contain inaccuracies. It is intended as a placeholder for future human verification. If you spot issues ahead of its initial review, please report them on GitHub!
Standard
Bold (SGR 1) is an SGR attribute that renders text with increased intensity or a heavier font weight.
Syntax
CSI 1 m SGR 1 — Bold / increased intensity
CSI 22 m SGR 22 — Normal intensity (reset bold and dim)
Formal syntax
SGR-bold = 0x1b, "[", "1", "m" ; SGR-normal-int = 0x1b, "[", "22", "m" ;
Description
Per ECMA-48 §8.3.117, SGR parameter 1 selects "bold or increased intensity." The effect is implementation-defined but typically manifests as either a heavier font weight, brighter colors, or both.
On most modern terminals, bold text is rendered using a heavier font weight from the same font family. Many terminals also shift the foreground color to its "bright" variant when bold is active and a standard (non-RGB) color is in use.
Bold is reset by SGR 22, which restores normal intensity. Note that SGR 22 also cancels dim (SGR 2) — there is no way to reset bold independently of dim using standard sequences. SGR 0 (reset all) also clears bold.
Examples
printf '\e[1mBold text\e[22m Normal text\n'
printf '\e[1;31mBold red\e[0m\n'
Specifications
| Specification | Section |
|---|---|
| VT510 Reference | — |
Terminal support
| Terminal | Support | Version | Notes |
|---|---|---|---|
| Terminal Emulators | |||
| Alacritty | ✓ | Yes | |
| Bobcat | ? | ? | Implemented in external TerminalCtrl library, not in Bobcat source code |
| contour | ✓ | v0.1.0 | |
| foot | ✓ | Yes | Implemented at csi.c:92 |
| Ghostty | ✓ | v1.0.0 | |
| iTerm2 | ✓ | Yes | Bold attribute (SGR 1) fully supported via VT100CHARATTR_BOLD in VT100GraphicRendition structure. |
| Kitty | ✓ | Yes | |
| Konsole | ✓ | Yes | SGR 1 sets RE_BOLD rendition flag |
| mintty | ✓ | Yes | Implemented at src/termout.c:2113. Sets ATTR_BOLD flag. |
| mlterm | ✓ | Yes | Supported since early versions |
| PuTTY | ✓ | 0.43 | SGR 1 sets ATTR_BOLD at terminal.c:4642-4645 |
| Rio | ✓ | v0.0.3 | |
| rxvt-unicode | ✓ | 1.2 | |
| st | ✓ | 0.1 | |
| terminology | ✓ | v0.1.0 | |
| VT100 | ✓ | Yes | |
| VTE | ✓ | Yes | |
| WezTerm | ✓ | Yes | |
| Windows Terminal | ✓ | Yes | SGR 1 sets intense attribute |
| xterm | ✓ | Yes | VT100 feature, supported since earliest versions |
| xterm.js | ✓ | 2.3.0 | |
| Multiplexers | |||
| cy | ✓ | v0.1.0 | |
| GNU Screen | ✓ | v.4.2.0 | SGR 1 mapped to A_BD attribute at src/ansi.c:1703 |
| tmux | ✓ | 0.8 | |
| tuios | ✓ | v0.0.15 | |
| Zellij | ✓ | v0.12.0 | |
See also
- Dim — SGR 2 — Decreased intensity