URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 2459
[ Назад ]

Исходное сообщение
"Цвет при выводе на консоль"

Отправлено Dr. Nebula , 13-Янв-04 15:54 
Народ, подскажите как сделать вывод перловой проги в консоль цветным?
Просто как то пару лет назад мне попался в руки скриптик, который разные значенения выводил разными цветами, было достаточно удобно.

Содержание

Сообщения в этом обсуждении
"Цвет при выводе на консоль"
Отправлено XMan , 13-Янв-04 16:47 
Незнаю, может в перле есть модуль, аля ncurses. А может и сам ncurses. Но в основах это делается через ESC-последовательности. Посмотри "man console_codes".

"Цвет при выводе на консоль"
Отправлено ChiP , 13-Янв-04 21:48 
>Незнаю, может в перле есть модуль, аля ncurses. А может и сам
>ncurses. Но в основах это делается через ESC-последовательности. Посмотри "man console_codes".
>
<-< chip@void >-< chip >->$ uname -rs
FreeBSD 4.8-RELEASE
<-< chip@void >-< chip >->$ man console_codes
No manual entry for console_codes
<-< chip@void >-< chip >->$

:)

А вопрошавшему:
my %COLORS = (
  'blue'   =>  "\033[34;01m",  # blue
  'green'  =>  "\033[32;01m",  # green
  'cyan'   =>  "\033[36;01m",  # cyan
  'red'    =>  "\033[31;01m",  # red
  'yellow' =>  "\033[33;01m",  # yellow
  'end'    =>  "\033[0m"       # `end`
);

далее
print $COLORS{'green'}, "Hello, World", $COLORS{'end'};

за остальными ESC-последовательностями лезь в мануал, который указал XMan


"Цвет при выводе на консоль"
Отправлено XMan , 14-Янв-04 00:00 
УГу. Может не быть мана, говоришь...
Ну тогда google.com на предмет console_codes спасет отца русской демократии :)

"Цвет при выводе на консоль"
Отправлено Dr. Nebula , 14-Янв-04 09:56 
>>Незнаю, может в перле есть модуль, аля ncurses. А может и сам
>>ncurses. Но в основах это делается через ESC-последовательности. Посмотри "man console_codes".
>>
><-< chip@void >-< chip >->$ uname -rs
>FreeBSD 4.8-RELEASE
><-< chip@void >-< chip >->$ man console_codes
>No manual entry for console_codes
><-< chip@void >-< chip >->$
>
>:)
>
>А вопрошавшему:
>my %COLORS = (
>  'blue'   =>  "\033[34;01m",  # blue
>  'green'  =>  "\033[32;01m",  # green
>  'cyan'   =>  "\033[36;01m",  # cyan
>  'red'    =>  "\033[31;01m",  # red
>  'yellow' =>  "\033[33;01m",  # yellow
>  'end'    =>  "\033[0m"       # `end`
>);
>
>далее
>print $COLORS{'green'}, "Hello, World", $COLORS{'end'};
>
>за остальными ESC-последовательностями лезь в мануал, который указал XMan

О! Очень похоже на то что я когда то видел! :) Тенькс


"Цвет при выводе на консоль"
Отправлено Murr , 14-Янв-04 16:11 
>А вопрошавшему:
>my %COLORS = (
>  'blue'   =>  "\033[34;01m",  # blue
>  'green'  =>  "\033[32;01m",  # green
>  'cyan'   =>  "\033[36;01m",  # cyan
>  'red'    =>  "\033[31;01m",  # red
>  'yellow' =>  "\033[33;01m",  # yellow
>  'end'    =>  "\033[0m"       # `end`
>);
>
>далее
>print $COLORS{'green'}, "Hello, World", $COLORS{'end'};
>
>за остальными ESC-последовательностями лезь в мануал, который указал XMan


Зачем советовать такие вещи? Терминалы не исчерпываются ANSI терминалами.
Смотреть надо в сторону curses.


"Цвет при выводе на консоль"
Отправлено ChiP , 15-Янв-04 00:14 
>>А вопрошавшему:
>>my %COLORS = (
>>  'blue'   =>  "\033[34;01m",  # blue
>>  'green'  =>  "\033[32;01m",  # green
>>  'cyan'   =>  "\033[36;01m",  # cyan
>>  'red'    =>  "\033[31;01m",  # red
>>  'yellow' =>  "\033[33;01m",  # yellow
>>  'end'    =>  "\033[0m"       # `end`
>>);
>>
>>далее
>>print $COLORS{'green'}, "Hello, World", $COLORS{'end'};
>>
>>за остальными ESC-последовательностями лезь в мануал, который указал XMan
>
>
>Зачем советовать такие вещи? Терминалы не исчерпываются ANSI терминалами.
>Смотреть надо в сторону curses.

Для начала данных последовательностей, имхо, вполне достаточно. Часто ли встречаются не ANSI терминалы ?
А для curses уже давно существуют биндинги:
p5-Curses
p5-Curses-Application
p5-Curses-Forms
p5-Curses-Widgets

но начинать с них, имхо, не разумно.