我正在制作一个使用Open3.popen3
运行shell命令的Vim插件,我需要结果和退出代码。 它在Linux上正常工作,但在Windows上冻结。 我已经在Windows下检查Open3.popen3
,每当我运行Open3.popen3
或Process.spawn
,shell都会冻结。 我试过安装win32-open3-19
gem(并且加载了require 'win32/open3
) – 但它仍然冻结。
有没有其他方法或gem我可以使用? 我更喜欢一些尽可能靠近Open3
(所以我的Linux和Windows版本可以尽可能地分享代码)。
我正在运行在Windows 7 64位上通过RubyInstaller安装的Ruby 1.9.3。
更多细节 :
这是我想运行的确切代码: https : //github.com/someboddy/vim-erroneous/blob/master/autoload/erroneous.rb#L43
它在Linux上工作,但在Windows上冻结。
在我的Windows上,我打开pry
然后写:
require 'win32/open3' inp,out,err,wait_thr=Open3.popen3('cmd')
而我的壳冻结。 当我在Linux上尝试它时(使用'bash'而不是'cmd'),它工作得很好。 我也尝试过'dir'(它不应该等待用户input),它也冻结了。