我正在使用的 Emacs 版本:GNU Emacs 22.2.1(i386-redhat-linux-gnu,GTK+ 版本 2.12.9)
从 emacs 调用 gdb 会破坏 emacs 窗口中的水平滚动。我通过输入 Mx gdb 调用 gdb,然后接受默认值(仅在末尾添加我的二进制文件的名称,例如): gdb --annotate=3 unittest
在调用调试器后的某个时间点(不是立即),自动水平滚动不再起作用。
通过自动水平滚动,我的意思是预期的行为是:跟随光标,在必要时向左或向右移动视口。例如:当光标位于一条长线的末尾(例如第 200 列)时,窗口的查看区域向右移动,从而使第 200 列可见。如果我然后按“主页”并且光标跳到行首 - 窗口也跟随它,我可以看到缓冲区的最左侧列。
在这里粘贴我的整个 .emacs 文件可能是个坏主意,所以我只是搜索了与 hscroll 相关的条目:
(custom-set-variables
'(column-number-mode t)
'(cua-mode t nil (cua-base))
'(hscroll-global-mode t nil (hscroll))
'(hscroll-margin 5)
'(hscroll-mode-name " ")
'(hscroll-snap-threshold 30)
'(indent-tabs-mode nil)
...
...但是如果有人认为需要,我可以将其附在此处或通过电子邮件发送...
希望有人知道如何解决这个问题,因为这真的很痛苦 - 每次我使用调试器时,我都需要重新启动 emacs ......我很确定这个问题在版本 20 中不存在......