0

我正在调试一个相当大的 rails 项目,我发现 emacs 的 rdebug 库有很大的帮助。然而,一个烦恼是源代码中的指针显示了错误的行。在下面的示例中,代码正在执行第 #277 行(如左侧终端所示),但代码中的指针位于下一行(如右侧终端所示)。

rdebug 跟踪模式指向源代码中的错误行

有人对如何追踪此错误有任何想法吗?我认为这是在 ruby​​-debug-extras 包中,但我没有对 emacs 进行任何黑客攻击,所以我什至不知道向其报告此错误的正确邮件列表。

4

1 回答 1

1

我不能声称自己特别了解 elisp 或 emacs 功能,但我遇到了同样的问题(以及其他一些问题),并且在我的 ruby​​-debug-extra 分支的这次提交中解决了一个问题。补丁只是将lineno变量调整一:

--- a/emacs/rdebug-track.el
+++ b/emacs/rdebug-track.el
@@ -212,8 +212,8 @@ problem as best as we can determine."
       "line number cue not found"
     ;;else
     (let* ((filename (match-string rdebug-marker-regexp-file-group block-str))
-           (lineno (string-to-number
-           (match-string rdebug-marker-regexp-line-group block-str)))
+           (lineno (- (string-to-number
+                    (match-string rdebug-marker-regexp-line-group block-str)) 1))
于 2013-10-28T08:13:07.100 回答