ruby - Byebug 终端输出不一致且有错误

标签 ruby terminal byebug

每当我使用 byebug 设置调试断点时,我都会注意到与我键入的文本不一致。例如,我能够输入前 2-3 个字符。但是,在前 2-3 个字符之后,终端开始随机添加方括号和其他字符。例如,当我键入 env 时,Byebug 输出:env,或者当我尝试访问 env 中的 key 时,Byebug 输出更糟糕的内容:^[[Aenv['QUERY_STRING'']^[[.

有人用 Byebug 遇到过这个问题吗?

最佳答案

我在 ruby​​ on rails 中使用多个 worker 时遇到了类似的问题。我在这里假设 OP 正在使用 rails,因为输出中提到了 envquery strings

因此,如果您在调试时运行多个 worker,它们可能会导致这种行为,因为代码仍在执行 byebug 断点后,更重要的是:当您尝试在终端中键入字母时,导致输入变得困惑。调试中间件会加剧这种行为,因为中间件总是会被命中,导致此问题仅在调试某些组件时发生,而不是在示例 Controller 中发生。

确保一次只有一名工作人员到达您的断点。这可以通过将您的开发环境设置为至少暂时不运行超过 1 个工作人员来完成

关于ruby - Byebug 终端输出不一致且有错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47475191/

相关文章:

ruby - 如何检查 ruby​​ 中的 2 个范围是否以任何方式相交?

ruby - 斐波那契线

unix - 还有其他像 VIM Tutor 这样的教程吗?

python - 如何为 MacOS for python 3.9 解决 "Preparing wheel metadata ... error"这个错误

ruby - Byebug 是否完全支持 Windows?

ruby - 我如何查看 Ruby Pry 中的变量?

ruby-on-rails - 如何编写这些资源的路由?

ruby-on-rails - Rails : many to many Model, NoMethodError:未定义的方法

ruby - Byebug 如何在没有断点的情况下继续

regex - sed mass 通过终端替换 CSS 样式