Библиотека LUFA (раннее название MyUSB) версия 101122
ESC-коды терминала ANSI - LUFA/Drivers/Misc/TerminalCodes.h

Defines

#define ANSI_ESCAPE_SEQUENCE(EscapeSeq)   "\33[" EscapeSeq

ESC-последовательности для модифицирования отображения текста

#define ESC_BOLD_ON   ANSI_ESCAPE_SEQUENCE("1m")
#define ESC_ITALICS_ON   ANSI_ESCAPE_SEQUENCE("3m")
#define ESC_UNDERLINE_ON   ANSI_ESCAPE_SEQUENCE("4m")
#define ESC_INVERSE_ON   ANSI_ESCAPE_SEQUENCE("7m")
#define ESC_STRIKETHROUGH_ON   ANSI_ESCAPE_SEQUENCE("9m")
#define ESC_BOLD_OFF   ANSI_ESCAPE_SEQUENCE("22m")
#define ESC_ITALICS_OFF   ANSI_ESCAPE_SEQUENCE("23m")
#define ESC_UNDERLINE_OFF   ANSI_ESCAPE_SEQUENCE("24m")
#define ESC_INVERSE_OFF   ANSI_ESCAPE_SEQUENCE("27m")
#define ESC_STRIKETHROUGH_OFF   ANSI_ESCAPE_SEQUENCE("29m")

Последовательности для управления цветом текста

#define ESC_FG_BLACK   ANSI_ESCAPE_SEQUENCE("30m")
#define ESC_FG_RED   ANSI_ESCAPE_SEQUENCE("31m")
#define ESC_FG_GREEN   ANSI_ESCAPE_SEQUENCE("32m")
#define ESC_FG_YELLOW   ANSI_ESCAPE_SEQUENCE("33m")
#define ESC_FG_BLUE   ANSI_ESCAPE_SEQUENCE("34m")
#define ESC_FG_MAGENTA   ANSI_ESCAPE_SEQUENCE("35m")
#define ESC_FG_CYAN   ANSI_ESCAPE_SEQUENCE("36m")
#define ESC_FG_WHITE   ANSI_ESCAPE_SEQUENCE("37m")
#define ESC_FG_DEFAULT   ANSI_ESCAPE_SEQUENCE("39m")
#define ESC_BG_BLACK   ANSI_ESCAPE_SEQUENCE("40m")
#define ESC_BG_RED   ANSI_ESCAPE_SEQUENCE("41m")
#define ESC_BG_GREEN   ANSI_ESCAPE_SEQUENCE("42m")
#define ESC_BG_YELLOW   ANSI_ESCAPE_SEQUENCE("43m")
#define ESC_BG_BLUE   ANSI_ESCAPE_SEQUENCE("44m")
#define ESC_BG_MAGENTA   ANSI_ESCAPE_SEQUENCE("45m")
#define ESC_BG_CYAN   ANSI_ESCAPE_SEQUENCE("46m")
#define ESC_BG_WHITE   ANSI_ESCAPE_SEQUENCE("47m")
#define ESC_BG_DEFAULT   ANSI_ESCAPE_SEQUENCE("49m")

Коды, управляющие положением курсора

#define ESC_CURSOR_POS_SAVE   ANSI_ESCAPE_SEQUENCE("s")
#define ESC_CURSOR_POS_RESTORE   ANSI_ESCAPE_SEQUENCE("u")
#define ESC_CURSOR_POS(Line, Column)   ANSI_ESCAPE_SEQUENCE(#Line ";" #Column "H")
#define ESC_CURSOR_UP(Lines)   ANSI_ESCAPE_SEQUENCE(#Lines "A")
#define ESC_CURSOR_DOWN(Lines)   ANSI_ESCAPE_SEQUENCE(#Lines "B")
#define ESC_CURSOR_FORWARD(Columns)   ANSI_ESCAPE_SEQUENCE(#Columns "C")
#define ESC_CURSOR_BACKWARD(Columns)   ANSI_ESCAPE_SEQUENCE(#Columns "D")

Некоторые другие управляющие последовательности

#define ESC_RESET   ANSI_ESCAPE_SEQUENCE("0m")
#define ESC_ERASE_DISPLAY   ANSI_ESCAPE_SEQUENCE("2J")
#define ESC_ERASE_LINE   ANSI_ESCAPE_SEQUENCE("K")

Detailed Description

зависимости для исходного кода модуля

Следующие файлы должны быть скомпилированы с любым проектом, который использует этот модуль:

модуля

Макросы ESC-кодов для совместимых текстовых терминалов ANSI.

Note:
Если необходимо, в makefile проекта может быть задан макрос DISABLE_TERMINAL_CODES для передачи компилятору GCC через опцию -D с целью запрета кодов терминала без модификации исходного кода, для использования с несовместимыми терминалами (тогда любые коды терминала эквивалентны пустым строкам).

Пример использования:

      printf("Некоторая строка, " ESC_BOLD_ON " Некоторая толстая строка");

Define Documentation

#define ANSI_ESCAPE_SEQUENCE (   EscapeSeq)    "\33[" EscapeSeq

Создает ESC-последовательность ANSI с указанной нагрузкой.

Parameters:
[in]EscapeSeqнагрузка для кодирования в ESC-последовательность ANSI, маска ESC_*.
#define ESC_BG_BLACK   ANSI_ESCAPE_SEQUENCE("40m")

Устанавливает цвет фона текста черным.

#define ESC_BG_BLUE   ANSI_ESCAPE_SEQUENCE("44m")

Устанавливает цвет фона текста в синий.

#define ESC_BG_CYAN   ANSI_ESCAPE_SEQUENCE("46m")

Устанавливает цвет фона текста в циан (cyan), голубой.

#define ESC_BG_DEFAULT   ANSI_ESCAPE_SEQUENCE("49m")

Устанавливает цвет фона текста в цвет терминала по умолчанию.

#define ESC_BG_GREEN   ANSI_ESCAPE_SEQUENCE("42m")

Устанавливает цвет фона текста в зеленый.

#define ESC_BG_MAGENTA   ANSI_ESCAPE_SEQUENCE("45m")

Устанавливает цвет фона текста в фуксин (magenta), красновато-лиловый.

#define ESC_BG_RED   ANSI_ESCAPE_SEQUENCE("41m")

Устанавливает цвет фона текста в красный.

#define ESC_BG_WHITE   ANSI_ESCAPE_SEQUENCE("47m")

Устанавливает цвет фона текста в белый.

#define ESC_BG_YELLOW   ANSI_ESCAPE_SEQUENCE("43m")

Устанавливает цвет фона текста в желтый.

#define ESC_BOLD_OFF   ANSI_ESCAPE_SEQUENCE("22m")

Выключает отображение толстого (bold) шрифта.

#define ESC_BOLD_ON   ANSI_ESCAPE_SEQUENCE("1m")

Включает толстый (bold) шрифт так, что весь далее идущий печатаемый на терминале текст будет толстым.

#define ESC_CURSOR_BACKWARD (   Columns)    ANSI_ESCAPE_SEQUENCE(#Columns "D")

Перемещает курсор влево на указанное количество колонок.

Parameters:
[in]Columnsколичество колонок для перемещения позиции курсора
#define ESC_CURSOR_DOWN (   Lines)    ANSI_ESCAPE_SEQUENCE(#Lines "B")

Перемещает курсор вниз на указанное количество строк.

Parameters:
[in]Linesколичество строк для перемещения позиции курсора
#define ESC_CURSOR_FORWARD (   Columns)    ANSI_ESCAPE_SEQUENCE(#Columns "C")

Перемещает курсор вправо на указанное количество колонок.

Parameters:
[in]Columnsколичество колонок для перемещения позиции курсора
#define ESC_CURSOR_POS (   Line,
  Column 
)    ANSI_ESCAPE_SEQUENCE(#Line ";" #Column "H")

Устанавливает положение курсора в указанные строку и колонку.

Parameters:
[in]Lineномер строки для позиционирования курсора
[in]Columnномер позиции в строке для позиционирования курсора
#define ESC_CURSOR_POS_RESTORE   ANSI_ESCAPE_SEQUENCE("u")

Восстанавливает положение курсора, сохраненное ранее ESC_CURSOR_POS_SAVE.

#define ESC_CURSOR_POS_SAVE   ANSI_ESCAPE_SEQUENCE("s")

Сохраняет текущее положение курсора, которое может быть восстановлено ESC_CURSOR_POS_RESTORE.

#define ESC_CURSOR_UP (   Lines)    ANSI_ESCAPE_SEQUENCE(#Lines "A")

Перемещает курсор вверх на указанное количетсво строк.

Parameters:
[in]Linesколичество строк для перемещения позиции курсора
#define ESC_ERASE_DISPLAY   ANSI_ESCAPE_SEQUENCE("2J")

Полная очистка дисплея терминала, при этом курсор перемещается в левый верхний угол.

#define ESC_ERASE_LINE   ANSI_ESCAPE_SEQUENCE("K")

Очистка текущей строки, с возвращением курсора в крайнюю левую позицию.

#define ESC_FG_BLACK   ANSI_ESCAPE_SEQUENCE("30m")

Устанавливает цвет текста в черный.

#define ESC_FG_BLUE   ANSI_ESCAPE_SEQUENCE("34m")

Устанавливает цвет текста в синий.

#define ESC_FG_CYAN   ANSI_ESCAPE_SEQUENCE("36m")

Устанавливает цвет текста в циан (cyan), голубой.

#define ESC_FG_DEFAULT   ANSI_ESCAPE_SEQUENCE("39m")

Устанавливает цвет текста в цвет терминала по умолчанию.

#define ESC_FG_GREEN   ANSI_ESCAPE_SEQUENCE("32m")

Устанавливает цвет текста в зеленый.

#define ESC_FG_MAGENTA   ANSI_ESCAPE_SEQUENCE("35m")

Устанавливает цвет текста в фуксин (magenta), красновато-лиловый.

#define ESC_FG_RED   ANSI_ESCAPE_SEQUENCE("31m")

Устанавливает цвет текста в красный.

#define ESC_FG_WHITE   ANSI_ESCAPE_SEQUENCE("37m")

Устанавливает цвет текста в белый.

#define ESC_FG_YELLOW   ANSI_ESCAPE_SEQUENCE("33m")

Устанавливает цвет текста в желтый.

#define ESC_INVERSE_OFF   ANSI_ESCAPE_SEQUENCE("27m")

Выключает инверсию печати шрифта.

#define ESC_INVERSE_ON   ANSI_ESCAPE_SEQUENCE("7m")

Включает инверсию шрифта так, что весь далее идущий печатаемый на терминале текст будет отображен в инверсном цвете.

#define ESC_ITALICS_OFF   ANSI_ESCAPE_SEQUENCE("23m")

Выключает отображение наклонного (italics) шрифта.

#define ESC_ITALICS_ON   ANSI_ESCAPE_SEQUENCE("3m")

Включает наклонный (italics) шрифт так, что весь далее идущий печатаемый на терминале текст будет наклонным.

#define ESC_RESET   ANSI_ESCAPE_SEQUENCE("0m")

Сброс всех текущих ESC-модификаторов вывода в состояние по умолчанию.

#define ESC_STRIKETHROUGH_OFF   ANSI_ESCAPE_SEQUENCE("29m")

Выключает печать шрифта с зачеркиванием.

#define ESC_STRIKETHROUGH_ON   ANSI_ESCAPE_SEQUENCE("9m")

Включает зачеркивание шрифта так, что весь далее идущий печатаемый на терминале текст будет отображен с горизонтальной линией в центре.

#define ESC_UNDERLINE_OFF   ANSI_ESCAPE_SEQUENCE("24m")

Выключает подчеркивание шрифта.

#define ESC_UNDERLINE_ON   ANSI_ESCAPE_SEQUENCE("4m")

Включает подчеркивание (underline) шрифта так, что весь далее идущий печатаемый на терминале текст будет подчеркнутым.

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines