Ruby 控制台输入在 1024 个字符处停止

Ruby console input halting at 1024 characters

我有一个脚本将控制台输入输入到一个变量中,并且需要粘贴一个长度超过 1024 个字符的字符串。

当我尝试粘贴超过 1024 个字符时,它在 1024 之后停止接受输入,只显示截断的字符串。手动输入字符也会达到此限制。我该如何解决这个问题?

iTerm好像不是问题,我粘贴1024以上到bash没问题

irb
2.1.3 :001 > a = STDIN.gets

我用Highline::import gem 和ask 方法时出现同样的症状

试试这个:

gem install rb-readline

在您的脚本中:

require 'rb-readline'

然后,读取一行:

a = Readline::readline

这样就解决了吗?

如果是这样,您可能还想看看使用 readline 编译您的 Ruby:

https://github.com/guard/guard/wiki/Add-Readline-support-to-Ruby-on-Mac-OS-X