我已经构建了许多特定于工作的助手函数,这些函数可能对我的团队的其他成员有用&姆达什。但我已经在Emacs的Elisp中编写了它们,要让它们从Notepad++转换是不可能的。
因此,我正在考虑将函数转换为Perl。没问题。
除非我一直使用ido完成来限制响应:
(setq client (ido-completing-read "Select a Client: " '("IniTrade" "HedgeCorp" "GlobalTech" "OCP") nil t))
编辑:完成读取的ido类似于
completing-read
Select a Client: {IniTrade | HedgeCorp | GlobalTech | OCP}
可以通过点击RET或部分键入(在本例中,第一个字母都是唯一的,因此这就是所需的全部内容,匹配的项目将成为最左侧)在最左侧的项目上进行选择。
我的“助手函数”是为了满足内部需求——打开特定的错误日志、将批还原到服务器等。对于这些操作,用户需要指定测试或生产环境、客户端、阶段等。在几乎所有情况下,这些都是用于构建另一个shell命令的字符串选择。如果返回一个数字项,则可以将其重新转换为字符串——但由于选择通常是必需的字符串,因此最好跳过该步骤。[结束编辑]
是否有一个Perl等价物?我看过
Term::Prompt
它提供了一个编号的菜单。。。我找到的最近的。这并不像ido完成那样漂亮,而且我仍然需要将数字结果向后转换为字符串(这不是一个大问题,只是很烦人)。
Term::Menus.
我还没试过这个。