我想在 linux 终端中实现命令行功能。我也在 ftp 命令中看到了这一点。
- 如果我按 Tab,我需要列出命令。
- 如果我按下控制字符,我需要根据该字符获取该字符,我将执行一些操作。
- 如果我给出任何命令它应该执行。
为此,我尝试使用非规范模式下的Term::ReadKey 。但是在这里我面临更多的问题,比如如果我按下任何控制字符或箭头,我会得到三个字符。对于向上箭头,我得到 ASCII 27 91 65。
谁能帮我解决这个问题?
我想在 linux 终端中实现命令行功能。我也在 ftp 命令中看到了这一点。
为此,我尝试使用非规范模式下的Term::ReadKey 。但是在这里我面临更多的问题,比如如果我按下任何控制字符或箭头,我会得到三个字符。对于向上箭头,我得到 ASCII 27 91 65。
谁能帮我解决这个问题?
我认为Term::Readline最好为您服务。
不幸的是,通用Term::ReadLine接口不包括可定制的完成功能。您必须为此选择一个特定的 readline 实现。
Term::ReadLine::Gnu、Term::ReadLine::Perl和Term::ReadLine::Zoid都能够执行自定义补全。Term::ReadLine::Gnu 可能是最好的文档。Term::ReadLine::Perl 几乎没有文档,而且我没有使用 Term::ReadLine::Zoid 的经验。