Перейти к содержанию

цветной текст в консоли


Гость

Рекомендуемые сообщения

Об этом уже говорилось неоднократно. Можно, конечно, использовать

напрямую Linux Console Codes (man console_codes). Только IMHO

это *нисколько* не проще использования ncurses, а зато непереносимо -- и в данном случае, это очень существенно, потому

как обычно работать с подобными программами через удаленный терминал очень некомфортно.

Ссылка на комментарий
Поделиться на другие сайты

Как, по-твоему, утилита ls использует цвета?

Вот кусок кода из ls.c

static struct bin_str color_indicator[] =

{

{ LEN_STR_PAIR ("\033[") }, /* lc: Left of color sequence */

{ LEN_STR_PAIR ("m") }, /* rc: Right of color sequence */

{ 0, NULL }, /* ec: End color (replaces lc+no+rc) */

{ LEN_STR_PAIR ("0") }, /* no: Normal */

{ LEN_STR_PAIR ("0") }, /* fi: File: default */

{ LEN_STR_PAIR ("01;34") }, /* di: Directory: bright blue */

{ LEN_STR_PAIR ("01;36") }, /* ln: Symlink: bright cyan */

{ LEN_STR_PAIR ("33") }, /* pi: Pipe: yellow/brown */

{ LEN_STR_PAIR ("01;35") }, /* so: Socket: bright magenta */

{ LEN_STR_PAIR ("01;33") }, /* bd: Block device: bright yellow*/

{ LEN_STR_PAIR ("01;33") }, /* cd: Char device: bright yellow */

{ 0, NULL }, /* mi: Missing file: undefined */

{ 0, NULL }, /* or: Orphanned symlink: undefined */

{ LEN_STR_PAIR ("01;32") }, /* ex: Executable: bright green */

{ LEN_STR_PAIR ("01;35") } /* do: Door: bright magenta */

};

Ссылка на комментарий
Поделиться на другие сайты

  • 1 год спустя...

А ежели речь идёт о shell, то цвета можно менять тем же самым echo, выведя соответствующую терминальную последовательность. Так например поступает rc.sysinit в связке c functions, когда выводит цветные "Failed", "Ok" или Кноппикс с цветной подсказкой коиандной строки.

Интересно, а printf(3) с этой последовательностью также отработает?

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...