我正在尝试从原始pdb程序调试我的python,而不是通过emacs运行pdb(它在代码的文本显示中用标记跟踪当前行)。 pdb中的list命令只显示几行代码,这有点令人讨厌,我宁愿用当前行的所有代码填充我的终端,直到当前行。
我知道我可以通过查看行号输入l 50,100(其中100是当前行)手动执行此操作,但这非常耗时,我想将其设置为自动运行。
我想知道是否有办法定义pdb命令来执行此操作?我猜它需要(1)访问当前行的编号N;然后(2)执行“l N-50,N”。我经常搜索,但找不到之前做过这个的人。也许有办法访问pdb模块自己的内部以获取行号?
(或者一种迂回的方式是写一些调用列表的东西,解析输出以提取当前行,然后执行一个新的列表命令,我想知道是否有人已经这样做了?这是IDE如何设法得到的来自pdb的当前行信息还是他们使用它的内部结构我想知道?)