如何在emacs 24.x shell中启用pdbtrack python调试?

ret*_*ian 1 python emacs pdb

使用emacs 23.x,pdbtrack集成(给你指向当前代码行的箭头)与常规代码一起使用M-x shell RET.例如,在使用Makefile运行自动化测试时进入调试器是很有用的.

在emacs 24.x中,这不再有效. 我注意到如果我运行python脚本M-x python-shell-send-file然后pdbtrack集成工作.但是当通过标准的emacs shell(M-x shell RET)运行python时它不起作用.

sfi*_*ink 6

我用这个片段:

(require 'python)

(defun my-shell-mode-hook ()
  (add-hook 'comint-output-filter-functions 'python-pdbtrack-comint-output-filter-function t))

(add-hook 'shell-mode-hook 'my-shell-mode-hook)
Run Code Online (Sandbox Code Playgroud)

防止pdbtrack的东西试图在其他缓冲区(例如gdb缓冲区)上工作.