Skip to content

Namespace Ase::AnsiColors

Namespace List > Ase > AnsiColors

The AnsiColors namespace contains utility functions for colored terminal output.

Public Types

Type Name
enum int8 Colorize
enum Colors
ANSI color symbols.

Public Static Attributes

Type Name
std::atomic< Colorize > colorize_cache = { Colorize::AUTO }

Public Functions

Type Name
std::string color (Colors acolor, Colors c1, Colors c2, Colors c3, Colors c4, Colors c5, Colors c6)
Return ANSI code for the specified color if stdout & stderr should be colorized, see colorize_tty() .
const char * color_code (Colors acolor)
Return ANSI code for the specified color.
bool colorize_tty (int fd)
Check whether the tty fd should use colorization, checks ASE_COLOR if__fd == -1.
void configure (Colorize colorize)
Override the environment variable $ASE_COLOR (which may contain "always", "never" or "auto").

Public Types Documentation

enum Colorize

enum Ase::AnsiColors::Colorize {
    NEVER = 0,
    ALWAYS = 1,
    AUTO = 2
};

enum Colors

enum Ase::AnsiColors::Colors {
    NONE,
    RESET,
    BOLD,
    BOLD_OFF,
    ITALICS,
    ITALICS_OFF,
    UNDERLINE,
    UNDERLINE_OFF,
    INVERSE,
    INVERSE_OFF,
    STRIKETHROUGH,
    STRIKETHROUGH_OFF,
    FG_BLACK,
    FG_RED,
    FG_GREEN,
    FG_YELLOW,
    FG_BLUE,
    FG_MAGENTA,
    FG_CYAN,
    FG_WHITE,
    FG_DEFAULT,
    BG_BLACK,
    BG_RED,
    BG_GREEN,
    BG_YELLOW,
    BG_BLUE,
    BG_MAGENTA,
    BG_CYAN,
    BG_WHITE,
    BG_DEFAULT
};

Public Static Attributes Documentation

variable colorize_cache

std::atomic<Colorize> Ase::AnsiColors::colorize_cache;

Public Functions Documentation

function color

std::string Ase::AnsiColors::color (
    Colors acolor,
    Colors c1,
    Colors c2,
    Colors c3,
    Colors c4,
    Colors c5,
    Colors c6
) 

function color_code

const char * Ase::AnsiColors::color_code (
    Colors acolor
) 

function colorize_tty

bool Ase::AnsiColors::colorize_tty (
    int fd
) 

function configure

void Ase::AnsiColors::configure (
    Colorize colorize
) 


The documentation for this class was generated from the following file /__w/anklang/anklang/ase/platform.cc