我正在和一个盲人学生一起工作。她可以从命令行运行 gdb 来调试基于窗口的程序,但程序从 gdb 获取焦点,因此如果遇到断点或程序崩溃,屏幕阅读器不会读取 gdb 结果。理想情况下,它希望在获得 gdb 输出时焦点会转到终端,否则,有没有办法在 gdb 遇到断点或程序崩溃时运行 linux 命令?然后我可以运行“espeak gdb”,她会知道 gdb 需要得到关注。
似乎应该有一种简单的方法可以使用 .gdbinit 中的脚本来执行此操作。
后来编辑:
我发现您可以将此代码放入.gdbinit:
python
import os
def stop_handler (event):
os.system("espeak gdb")
gdb.events.stop.connect (stop_handler)