BOKOSCU

ANSI Escape Codes

ANSI escape codes начинаются с символа ESC (код ASCII 27), за которым следует символ [ (открывающая квадратная скобка) и одна или более команд, разделенных точкой с запятой. Завершаются команды буквой, обозначающей тип команды.
ESC код для большенства консолей это \033 или \x1B - на них меняется ключевое слово ESC в завивисмости от консоли и вашего ЯП.

Общий вид

ESC[command[;command]X
ESC[1;30;44mПриветESC[0m //Тусклый, чёрный текст с синий фоном.

Список ANSI Escape Codes

Управление текстом и стилями

Имя Code ANSI escape codes Описание
Сброс ESC[0m сбрасывает все атрибуты (возвращает к обычному тексту).
Жирный ESC[1m включает жирный шрифт.
Тусклый ESC[2m включает тусклый (уменьшенная яркость).
Курсив ESC[3m включает курсив.
Подчеркнутый ESC[4m включает подчеркнутый текст.
Мигающий ESC[5m включает мигание текста.
Инвертированный ESC[7m инвертирует цвета фона и текста.
Скрытый ESC[8m делает текст скрытым.

Цвета текста (Foreground Colors)

Имя Code ANSI escape codes Описание
Черный ESC[30m
Красный ESC[31m
Зеленый ESC[32m
Желтый ESC[33m
Синий ESC[34m
Магента ESC[35m
Циан ESC[36m
Белый ESC[37m
8-bit цвета текста ESC[38;5;{n}m где {n} — код цвета от 0 до 255.
24-bit цвета текста ESC[38;2;{r};{g};{b}m где {r}, {g}, {b} — значения красного, зеленого и синего компонентов соответственно (0-255).

Цвета фона (Background Colors)

Имя Code ANSI escape codes Описание
Черный ESC[40m
Красный ESC[41m
Зеленый ESC[42m
Желтый ESC[43m
Синий ESC[44m
Магента ESC[45m
Циан ESC[46m
Белый ESC[47m
8-bit цвета фона ESC[48;5;{n}m где {n} — код цвета от 0 до 255.
24-bit цвета фона ESC[48;2;{r};{g};{b}m где {r}, {g}, {b} — значения красного, зеленого и синего компонентов соответственно (0-255).

Управление курсором

Имя Code ANSI escape codes Описание
Перемещение курсора вверх ESC[{n}A перемещает курсор вверх на {n} строк.
Перемещение курсора вниз ESC[{n}B перемещает курсор вниз на {n} строк.
Перемещение курсора вправо ESC[{n}C перемещает курсор вправо на {n} колонок.
Перемещение курсора влево ESC[{n}D перемещает курсор влево на {n} колонок.
Установка курсора в позицию ESC[{y};{x}H или ESC[{y};{x}f перемещает курсор в позицию (y, x).
Сохранение позиции курсора ESC[s
Восстановление позиции курсора ESC[u
Скрытие курсора ESC[?25l
Показ курсора ESC[?25h

Очистка экрана и строк

Имя Code ANSI escape codes Описание
Очистка экрана ESC[2J очищает весь экран.
Очистка от курсора до конца экрана ESC[0J
Очистка от курсора до начала экрана ESC[1J
Очистка строки ESC[2K очищает всю строку, где находится курсор.
Очистка от курсора до конца строки ESC[0K
Очистка от курсора до начала строки ESC[1K

Форматирование текста

Имя Code ANSI escape codes Описание
Фрактурный (Fraktur) ESC[20m
Сверхжирный (Bold off or double underline) ESC[21m
Нормальная интенсивность (Normal color or intensity) ESC[22m
Курсив выкл (Not italic, not fraktur) ESC[23m
Подчеркнутый выкл (Not underlined) ESC[24m
Мигание выкл (Steady, not blinking) ESC[25m
Инвертирование выкл (Not inverted, not negative) ESC[27m
Скрытый выкл (Not hidden) ESC[28m
Перекрестная линия (Crossed-out) ESC[9m
Перекрестная линия выкл (Not crossed-out) ESC[29m

Дополнительные цвета (Foreground and Background)

Имя Code ANSI escape codes Описание
Стандартный шрифт (Default font) ESC[10m
Альтернативный шрифт 1 ESC[11m
Альтернативный шрифт 2 ESC[12m

Состояния и атрибуты терминала

Имя Code ANSI escape codes Описание
Сохранить атрибуты (Save cursor position and attributes) ESC[s
Восстановить атрибуты (Restore cursor position and attributes) ESC[u

Прочие коды

Имя Code ANSI escape codes Описание
Двойное подчеркивание (Double underline) ESC[21m в некоторых системах используется как сверхжирный
Скрытый (Hidden) ESC[8m
Показ курсора (Show cursor) ESC[?25h
Скрытие курсора (Hide cursor) ESC[?25l

Работа с буфером экрана

Имя Code ANSI escape codes Описание
Переключение на альтернативный экранный буфер ESC[?1049h
Переключение на основной экранный буфер ESC[?1049l