¿Cómo depurar programas de Python en emacs?Depuración de programas de Python en emacs
utilizo pitón-mode.el
consigo referencia como pdb de importación; pdb.set_trace();
pero no estoy seguro de cómo usarlo.
¿Cómo depurar programas de Python en emacs?Depuración de programas de Python en emacs
utilizo pitón-mode.el
consigo referencia como pdb de importación; pdb.set_trace();
pero no estoy seguro de cómo usarlo.
Escriba M-x cd
para cambiar el directorio a la ubicación del programa que desea depurar. Tipo M-x pdb
. Se le preguntará con Run pdb (like this): pdb
. Ingrese el nombre del programa (por ejemplo, test.py
).
En el (Pdb)
, escriba help
para obtener más información acerca de cómo usar pdb.
Alternativamente, se puede poner
import pdb
pdb.set_trace()
derecha dentro de su programa (por ejemplo test.py
). Ahora escriba M-x shell
para obtener un intérprete de comandos de shell. Cuando ejecutas tu programa, serás arrojado al pdb
en el punto donde se ejecuta pdb.set_trace()
.
Para mí, que necesitaba para reemplazar el "AP" por defecto con
python -m pdb myscript.py
El realgud
paquete (disponible en Melpa) apoya AP (entre tropecientos otros depuradores), y tiene una gran cantidad de interesantes características que El PDB de Emac no tiene.
El que más me gusta es el modo shortkeys. Una vez que comience a depurar un programa, puede presionar n
, s
, c
etc. directamente en la ventana de origen, en lugar de tener que escribir estos comandos en el búfer de PDB. También es compatible con combinaciones de teclas de estilo Visual Studio con teclas de función (f10
, f11
, f5
, etc.).
Después de instalar RealGUD, necesita ejecutar M-x load-feature realgud
para cargarlo, y puede iniciar pdb
con M-x realgud:pdb
.
Debo añadir que tengo un pequeño conflicto de intereses. Encontré el paquete tan ordenado que comencé a piratearlo, y ahora me convertí en un mantenedor conjunto. –
El uso de pdbtrack (a través del shell M-x) es probablemente una mejor solución. Es mucho más fácil controlar directorios y entornos de esa manera. –
@matt con Mx pdb puede establecer puntos de interrupción en archivos de origen y un cursor mostrará la posición de ejecución actual a medida que avanza: http://twistedmatrix.com/documents/current/core/howto/debug-with-emacs .html –
Puede encontrar un tutorial gráfico aquí: http://sunnyeves.blogspot.com/2011/04/debugging-python-on-emacs-ide.html – gt6989b