如何在Emacs中使用ruby-debug?

16
我知道Emacs与gdb有某种集成(尽管我从未使用过),可以在调试程序时跳转文件。我想在Ruby程序中也能做到这一点。
6个回答

10

如erenon所说,使用ruby debug,它提供了一个库给emacs使用,让你可以像使用gdb一样使用它。

通过在终端中输入以下命令来安装rdebug(根据您的系统情况,sudo是可选项):

<sudo> gem install ruby-debug

接下来,您需要从RubyForge下载ruby-debug-extra文件,并按照标准方式进行安装。

  sh ./configure
  make
  make test # optional, but a good idea
  sudo make install

这会为你提供用于与rdebug交互的elisp文件,以及可以在emacs内查看的ruby-debug文档。

AJ


6
谢谢!需要注意的是,在编译 ruby-debug-extra 之前,我还需要在 Ubuntu 上安装 texi2htmltexinfo 软件包,但最终成功了。 - agentofuser

6

1

我在GNU Emacs 23.1.50.1 (x86_64-apple-darwin10.0.0, NS apple-appkit-1038.11) of 2009-10-31中遇到了"无法打开加载文件:gdb-ui"的问题。


1
你是否曾经想到过解决这个问题的方法?我也遇到了同样的问题。 - Clint Miller
看起来 gdb-ui 不再是 Emacs 的一部分了。我的版本 24 没有包括它们。在 Mac OS X 上(就像你正在运行的那样,但我使用的是 10.8),我在这里找到了副本:/usr/share/emacs/22.1/lisp/progmodes/gdb-ui.el.gz/usr/share/emacs/22.1/lisp/progmodes/gdb-ui.elc,它们似乎仍然可以与新版本的 Emacs 一起使用。 - febeling

1

你可能想要使用 rdebug。


0

我曾经遇到了与gdb-ui相关的问题,但是我找到了解决方法:我从这里下载了gdb-ui.el并将其放入ruby-debug-extra/emacs目录中...然后我调整了Makefiles以在任何其他rdebug*.el文件之前指向此文件。完成这一步骤后,您将使make工作。由于我正在使用emacs-snapshot,并且gdb模式已经在我的emacs环境中可用,因此此问题仅涉及构建rdebug模式。之后,我使用“sudo make install”进行了安装,它完美地运行 :) 不要忘记在您的~/.emacs或任何其他用于引导配置的地方添加(require 'rdebug)。


0

虽然我的系统上texi2html和texinfo不够用,但是我选择的策略可以实现,但我没有安装额外的软件包就放弃了这个策略。

这是我所做的:从http://rubyforge.org/frs/?group_id=1900&release_id=28306下载ruby-debug-extra-0.10.4.tar.gz,解压缩它,但不要进行整个configure/make/blah/blah的过程。相反,我只是将'emacs'目录复制到~/.emacs.d/rdebug,然后在我的~/.emacs.d/init.el文件中添加以下内容(您也可以使用您的~/.emacs文件):

(add-to-list 'load-path "~/.emacs.d/rdebug")
(autoload 'rdebug "rdebug" "ruby-debug interface" t)

这不会进行字节编译,我并不在意。我更喜欢这个解决方案,因为我非常烦恼这些软件包强制你安装文档。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接