Используем Term::Cap (описание) и POSIX (описание, POSIX::Termios).
#!/usr/bin/perl -w
use strict;
use Term::Cap;
my $ospeed = 9600;
eval {
# Получиь скорость вывода на терминал
require POSIX;
my $termios = new POSIX::Termios;
$termios->getattr;
$ospeed = $termios->getospeed;
};
# Инициализация терминала
my $terminal = Term::Cap->Tgetent({ TERM => undef, OSPEED => $ospeed });
$terminal->Trequire(qw/cm cl rc sc/);
# Запомнить позицию курсора
print $terminal->Tputs('sc', 1);
# Очистить экран
print $terminal->Tputs('cl', 1);
foreach my $x (1..10) {
foreach my $y (1..10) {
# Переместить курсор в нужную позицию
my $goto = $terminal->Tgoto('cm', $x * 5, $y);
print $goto, $x * $y;
}
}
# Вернуть позицию курсора
print $terminal->Tputs('rc', 1);
Немає коментарів:
Дописати коментар