使用emacs 23.x,pdbtrack集成(给你指向当前代码行的箭头)与常规M-x shell RET
一起使用。例如,这在使用Makefile运行自动化测试时进入调试器是很有用的。
在emacs 24.x中,这不再有效。我注意到如果我运行带有M-x python-shell-send-file
的python脚本,那么pdbtrack集成就可以了。但是当通过标准的emacs shell(M-x shell RET
)运行python时它不起作用。
答案 0 :(得分:5)
我使用此代码段:
(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)
防止pdbtrack的东西尝试在其他缓冲区(例如gdb缓冲区)上工作。
答案 1 :(得分:3)
您可以通过在.emacs
文件中添加以下挂钩来解决此问题:
(add-hook 'comint-output-filter-functions 'python-pdbtrack-comint-output-filter-function)