2009-08-31 11 views
15

Sé que Emacs tiene algún tipo de integración con gdb (aunque nunca lo he usado) para pasar por los archivos mientras depura un programa. Me gustaría hacer lo mismo con los programas de Ruby.¿Cómo uso ruby-debug dentro de Emacs?

Respuesta

10

Como dijo erenon, use ruby ​​debug, que proporciona una biblioteca para emacs que le permite usarlo como gdb.

Instalar rdebug mediante la emisión de este comando en su terminal (el sudo es opcional, dependiendo de su sistema):

<sudo> gem install ruby-debug 

A continuación, deberá download el archivo ruby-debug-extra de RubyForge, e instalarlo de la manera estándar.

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

Esto le da los archivos elisp para la interacción con rdebug, además de la documentación para el rubí de depuración que se puede ver desde Emacs.

AJ

+6

Gracias! Como nota, también tuve que instalar (en Ubuntu) los paquetes 'texi2html' y' texinfo' antes de compilar 'ruby-debug-extra', pero funcionó. – hsribei

1

Es posible que desee usar rdebug.

1

que estoy recibiendo "puede presentar carga no abierta: IAE-ui" en GNU Emacs 23.1.50.1 (x86_64-manzana-darwin10.0.0, NS-manzana-AppKit 1.038,11) de 2009-10 -31

+1

¿Alguna vez se te ocurrió una solución para esto? Me estoy encontrando con el mismo problema. –

+0

Parece que 'gdb-ui' ya no es parte de Emacs. Mi versión 24 no los incluye. En Mac OS X (mientras está ejecutando, pero uso 10.8), encontré copias aquí: '/ usr/share/emacs/22.1/lisp/progmodes/gdb-ui.el.gz','/usr/share/emacs/22.1/lisp/progmodes/gdb-ui.elc' y todavía parecen funcionar con una nueva versión de emacs. – febeling

0

Estaba atrapado con el mismo problema con gdb-ui, pero encontré la solución: descargué gdb-ui.el de here y lo puse en ruby-debug-extra/emacs dir ... luego ' Hemos ajustado Makefiles para que apunten a este archivo antes que cualquier otro archivo rdebug * .el. Después de este paso, te pondrás a trabajar. Como estoy usando emacs-snapshot y el modo gdb ya está disponible en mi entorno emacs, este problema solo está a punto de crear el modo rdebug. Después de esto lo he instalado con "sudo make install" y funciona perfectamente :) No olvides agregar (requiere 'rdebug) a tus ~/.emacs o lo que sea que utilices para iniciar tu configuración.

0

La estrategia elegida se puede hacer funcionar, aunque texi2html y texinfo no fueron suficientes en mi sistema, pero dejé de seguir esta estrategia sin instalar los paquetes adicionales.

Esto es lo que hice: descargue ruby-debug-extra-0.10.4.tar.gz desde http://rubyforge.org/frs/?group_id=1900&release_id=28306, desmarquelo, pero NO haga todo el ajuste configure/make/blah/blah. En cambio, simplemente copié el directorio 'emacs' en ~/.emacs.d/rdebug, y luego lo agregué a mi archivo ~/.emacs.d/init.el (también puede usar su archivo ~/.emacs):

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

Esto no lo compilará en bytes, no me importó. Prefiero esta solución porque realmente me molesta que los paquetes te obliguen a instalar los documentos.

Cuestiones relacionadas