Как я могу изменить цвета fbterm, используя escape-последовательности?

1414
merryup

Из fbterm (1) мы можем прочитать:

FbTerm поддерживает расширение цветового режима 256 xterm. (...) Но 256-кратные escape-последовательности xterm конфликтуют с linux-последовательностями, реализованными FbTerm, поэтому для поддержки этой функции были введены частные escape-последовательности:

 ESC [ 1 ; n } set foreground color to n (0 - 255) ESC [ 2 ; n } set background color to n (0 - 255) ESC [ 3 ; n ; r ; g ; b } set color n to (r, g, b), n, r, g, b all in (0 - 255) 

Как эти escape-последовательности могут быть записаны с помощью команды echo -ne?

2

1 ответ на вопрос

2
Kai

Вы можете использовать, например,

echo -ne "\E[2;32} " 

который должен напечатать синий пробел. (32 - 32-й цвет в 8-битной таблице цветов по умолчанию, которая кажется синим.)

(Конечно, вы также можете использовать \x1bили \033вместо, \Eчтобы представлять escape-символ.)

Для просмотра всех 255 цветов вы можете использовать for i in ; do echo -ne "\E[2;$i} "; done; tput sgr0; echoили for i in ; do echo -ne "\E[2;$i}$i "; done; tput sgr0; echoкоторый также включает в себя номер цвета.

Пример: colour output example captured with fbgrab from framebufferconsole

У вас есть ссылка на цветовую палитру по умолчанию? Attie 5 лет назад 0
Нет, но вы можете попробовать что-то вроде `for i в ; do echo -ne "\ E [2; $ i}"; сделанный; tput sgr0; echo`, это должно вывести 255 цветных пробелов и сбросить каждый параметр, связанный с цветом текста, на значения по умолчанию в конце (`tput sgr0`). Kai 5 лет назад 0
Действительно - возможно, вы могли бы добавить это к своему ответу со скриншотом результата? Цифры в цвете были бы еще лучше :-) Attie 5 лет назад 0
Готово, я добавил обе строки (-: Kai 5 лет назад 1

Похожие вопросы