在Emacs中调试:从源代码缓冲区触发GUD命令

1 投票
1 回答
646 浏览
提问于 2025-04-17 13:01

在使用Emacs调试代码的时候,我喜欢同时打开两个窗口,一个窗口显示我正在调试的源代码,另一个窗口显示调试器(对于Python来说是pdb)。

我在我的.emacs文件中定义了以下快捷键:

(require 'gud)                                                                                                                                                
(define-key gud-mode-map '[C-f10] 'gud-next)                                                                                                                  
(define-key gud-mode-map '[C-f11] 'gud-step)                                                                                                                  
(define-key gud-mode-map '[C-f5] 'gud-cont)                                                                                                                   
(define-key gud-mode-map '[C-f12] 'gud-break) 

通过这些设置,我可以在运行pdb的窗口中使用GUD的快捷键,比如gud-nextgud-step等,但我无法在显示Python代码的窗口中使用这些快捷键。

我希望能在显示源代码的窗口中使用快捷键来触发调试器的GUD命令。请问有什么办法可以做到这一点吗?

我使用的是最新版本的python-mode(6.0.4)和Emacs 23.3.1。

1 个回答

4

试试用 global-set-key 来设置键位:

(global-set-key [C-f10] 'gud-next)
(global-set-key [C-f11] 'gud-step)
(global-set-key [C-f5] 'gud-cont)
(global-set-key [C-f12] 'gud-break)

如果我没记错的话,这个方法对我有效。

撰写回答