Страницы

Поиск по вопросам

четверг, 9 апреля 2020 г.

Что означают следующие ANSI escape последовательности?

#c #linux #escape

                    
Просмотрел несколько источников, в том числе англоязычных, но нигде не нашел расшифровку
следующих escape-последовательностей:

\e[%i%d;%dr (В библиотеке S-lang присваивается переменной с именемScroll_R_Str)

\e[%i%d;%dH (Тут 3 аргумента, но для установки позиции, согласно документации, используется
2, я не понял этого момента..., в библиотеке S-lang данная последовательность присваивается
переменной с именемAbs_Curs_Pos_Str)

\e[P
\e[%dM
\e[%dL


Обновлено: неизвестны для меня также следующие последовательности (первые две, насколько
я понимаю, не являются ESC-последовательностями, так ли это?)

\016
\017
\e(B\e)0


Помогите пожалуйста в них разобраться и понять, что они делают?
    


Ответы

Ответ 1



Посмотрите man console_codes или то же самое в сети или по-русски. С ESC[ начинаются CSI-последовательности.

Ответ 2



Посмотрите тут: http://www.opennet.ru/docs/BSD/pascal/syscons/ansi.html Нашел там Esc[nM, Esc[nL - удалить / вставить n строк В английской википедии, вроде норм расписан принцип https://en.wikipedia.org/wiki/ANSI_escape_code int i, j; qDebug() << std::sscanf("12345", "%i%d", &i, &j) << i << j; выводит 1, 12345, 0 qDebug() << std::sscanf("12 345", "%i%d", &i, &j) << i << j; выводит 2, 12, 345. Может чем поможет

Комментариев нет:

Отправить комментарий