Визуальные сигналы поддерживаются не всеми
Визуальные сигналы поддерживаются не всеми терминалами, поэтому мы включили их вызов в eval. Если визуальный сигнал не поддерживается, Trequi re инициирует die, при этом переменная $vb останется равной "". В противном случае переменной $vb присваивается служебная последовательность для выдачи сигнала.
Более разумный подход к выдаче сигналов реализован в графических терминальных системах (таких, какх(еггп). Многие из них позволяют включить визуальные сигналы на уровне внешнего приложения, чтобы программа, тупо выводящая chr(7), была менее шумной.
> Смотри также---------------------------------------------------------------------------------------------
Раздел «Quote и Quote-like Operators» в perlop(l); документация по стандартному модулю Term:: Cap.
15.8. Использование termios
Проблема
Вы хотите напрямую работать с характеристиками своего терминала.
Решение
Воспользуйтесь интерфейсом POSIX termios.
Комментарий
Представьте себе богатые возможности команды stty — можно задать все, от служебных символов до управляющих комбинаций и перевода строки. Стандартный модуль POSIX обеспечивает прямой доступ к низкоуровневому терминальному интерфейсу и позволяет реализовать хйг/-подобные возможности в вашей программе.
Программа из примера 15.2 показывает, какие управляющие символы используются вашим терминалом для стирания в предыдущей и текущей позиции курсора (вероятно, это клавиши «забой» и Ctrl+U). Затем она присваивает им исторические значения, # и @>, и предлагает ввести какой-нибудь текст. В конце своей работы программа восстанавливает исходные значения управляющих символов.
Пример 15.2. demo
#'/usr/bin/perl -w
# Демонстрация работы с интерфейсом POSIX termios
use POSIX qw(-termios_h),
$term = POSIX::Termios->new, $term->getattr(fileno(STDIN));
$erase = $term->getcc(VERASE),
Skill = $term->getcc(VKILL),
printf Erase is character %d, %s\n\ $erase, uncontrol(chr($erase)),
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий