使用 Term::Readline:Zoid 时出现"ViCommand: no such keymap"错误



我有一段简单的代码,在导出之前运行良好

PERL_RL='Zoid default_mode=ViCommand'

以便在编辑时使用vi模式。当我测试代码时,我得到了错误:ViCommand:没有这样的keymap。我安装了libterm readline zoid perl,根据我所知,ViCommand是内置的,所以我应该可以使用,但显然不是。

#!/usr/bin/env perl
use warnings;
use strict;
use Term::ReadLine;
my $term = new Term::ReadLine 'LineEdit';
while ( defined ($_ = $term->readline($ARGV[0],$ARGV[1])) ) {
print $_;
exit;
}

似乎没有名为ViCommand的命令。但是,通过检查来源,请参见第80行:

command => { _use => 'Term::ReadLine::Zoid::ViCommand'  },

您应该能够使用";ViCommand";通过如下设置环境变量PERL_RL进行行编辑:

PERL_RL='Zoid default_mode=command'

另一个解决方案:

$term->parse_and_bind("set editing-mode vi");

相关内容

  • 没有找到相关文章

最新更新