4.7. ANSI terminal color and style helpers
The ANSI_COLORS module provides helpers for wrapping strings with ANSI escape codes for colored and styled terminal output.
Color output is controlled by the use_tty_colors variable. Call
init_ansi_colors to auto-detect support from command-line flags
(--color / --no-color) and environment variables (TERM,
NO_COLOR), or set use_tty_colors directly.
All functions and symbols are in “ansi_colors” module, use require to get access to it.
require daslib/ansi_colors
Example:
require daslib/ansi_colors
[export]
def main() {
init_ansi_colors()
print("{red_str("error")}: something went wrong\n")
print("{green_str("ok")}: all good\n")
print("{bold_str("important")}: pay attention\n")
}
4.7.1. Configuration
4.7.1.1. init_ansi_colors
- init_ansi_colors(args: array<string>)
Detect color support from args, TERM, and NO_COLOR environment variables.
Sets use_tty_colors accordingly. Respects --color, --no-color, and NO_COLOR.
- Arguments:
args : array<string>
- init_ansi_colors()
4.7.2. Colors
- blue_str(str: string): string
Wraps str with ANSI blue (\\x1B[34m) if colors are enabled.
- Arguments:
str : string
- cyan_str(str: string): string
Wraps str with ANSI cyan (\\x1B[36m) if colors are enabled.
- Arguments:
str : string
- green_str(str: string): string
Wraps str with ANSI green (\\x1B[32m) if colors are enabled.
- Arguments:
str : string
- magenta_str(str: string): string
Wraps str with ANSI magenta (\\x1B[35m) if colors are enabled.
- Arguments:
str : string
- red_str(str: string): string
Wraps str with ANSI red (\\x1B[31m) if colors are enabled.
- Arguments:
str : string
- yellow_str(str: string): string
Wraps str with ANSI yellow (\\x1B[33m) if colors are enabled.
- Arguments:
str : string
4.7.3. Styles
- bold_str(str: string): string
Wraps str with ANSI bold (\\x1B[1m) if colors are enabled.
- Arguments:
str : string
- dim_str(str: string): string
Wraps str with ANSI dim (\\x1B[2m) if colors are enabled.
- Arguments:
str : string
- reset_str(): string
Returns the ANSI reset sequence if colors are enabled, empty string otherwise.
- underline_str(str: string): string
Wraps str with ANSI underline (\\x1B[4m) if colors are enabled.
- Arguments:
str : string