当我在一个 pry 或常规 irb 控制台中输入一个对于控制台宽度来说太长的字符串时,它会像往常一样包装,见下文(在 OS X 10.8.2 terminal.app 中使用 pry):
但是,当我尝试使用向上箭头重播命令时,我得到了这个: Pry 切断了一些命令并重复提示。另一方面, Irb 表现得很好,甚至在需要时向上滚动缓冲区:
Kyrylo:如果你在 master 分支中修复了这个问题Pry.auto_resize!
但这里的问题是(正如 ryanf 在 Freenode #pry 上指出的那样),提示中有颜色转义。
\e[XXn
不占用空格,但算作 5 个字节,所以 Readline 会混淆。
有谁知道没有这个问题的任何 Ruby 使用 Readline?
输入第一个表达式后,您似乎调整了终端窗口的大小。目前,Pry 并没有真正考虑到这个事件,而是将窗口大小视为一个常数值。不幸的是,唯一的解决方案是每次需要调整窗口大小时重新启动 Pry。这是一个错误,迟早会被修复。