是否可以使用zsh的内置行编辑器(zle
)将输入提供给子进程?也就是说,我想运行zlewrap mycommand
哪里zlewrap
是zsh函数,并且mycommand
是从stdin读取行的任何程序;zlewrap
可以有效地向提供zle的行编辑功能mycommand
。这是在其模型上rlwrap
执行的,但是使用readline而不是zle进行行编辑。
2
这看起来很有帮助:zsh.org/mla/users/2004/msg00917.html。它不像单个命令那样简单,但是您可以使该脚本适应您的程序(请阅读后续内容进行更正)。
—
imgx64 2011年
当我想到解决方案时,我遇到的一个问题是,如何指示何时要在ZLE中进行“编辑”以及何时要等待“ mycommand”返回?它只会返回一行吗?
—
多项式
像这样的@polynomial包装器一次返回一行到它们后面的进程。的使用
—
Caleb 2012年
rlwrap
非常普遍,您可能已经使用过。考虑一下您在mysql,sqlite,lftp等中获得的一些伪外壳,它们都具有某种行编辑器的实现,该编辑器一次一行或一行返回到背后的实际处理器。rlwrap
对于接受STDIN的任何程序,它的命中率都非常高,但是具有zle样式的绑定和功能而不是不那么广泛的readlines会很好。
你看了手册
—
2012年
zsh
- cs.elte.hu/zsh-manual/zsh_14.html?-我不太了解您的问题,但是Google搜索了标题并找到了该页面。这可能会有所帮助,但我不知道。
好的,我只是想提供帮助,因为我看到您的问题在一年多以来都没有得到回答。抱歉,我的评论不够好。
—
2012年