我使用 Term::ReadLine::Gnu,我尝试使用 event_loop、event_hook 或 callback_read_char 属性但没有成功。
使用 event_loop,我尝试了文档中的示例
$term->event_loop(sub {
my $data = shift;
$data->[1] = AE::cv();
$data->[1]->recv();
}, sub {
my $fh = shift;
my $data = [];
$data->[0] = AE::io($fh, 0, sub { $data->[1]->send() });
$data;
});
我有:
不能在 Term::ReadLine::Gnu 中执行 `event_loop'
event_hook 有效,但不像我想要的那样......它在等待期间被频繁调用,不仅在打印 char 时。
我没有找到如何使用 callback_read_char 属性,如果满足我的需要......
那么,如何检查输入(仅打印数字)并将输入长度限制为 10 位?我怎样才能做到这一点?还是我必须使用另一个模块?