我试图实现一个简单的shell提示,只需要处理内部命令,我试过Term::ReadLine
,但是那个不像bash那样处理Tab键,所以我想知道还有什么可以我现在做。
答案 0 :(得分:2)
快速搜索CPAN会产生Term::Completion
和Term::Complete
use Term::Completion qw( Complete );
my $result = Complete($prompt, @choices);
答案 1 :(得分:1)
Term::Readline
是readline接口的许多可能实现的工厂包装器。你得到的默认值是在纯perl中实现的一个相当小的,称为Term::Readline::Perl
;它没有tab-complete这样的东西。
如果您安装了Term::Readline::Gnu
,那么它确实有tab-complete,并且应该优先使用pureperl,Term::Readline
。