假设我perldb
在 Emacs (Mx perldb) 上使用 Perl 进行了长时间的调试会话。输出堆积如山,在某些时候变得难以浏览。
我可以用 重新启动调试器R,但这不会清除以前的输出。是否有清除 Perl 调试器缓冲区输出的命令,而无需终止调试器并启动新会话?
你可以运行comint-truncate-buffer
。这将从缓冲区中删除除最后 1024 行之外的所有行。尺寸可以通过改变来定制comint-buffer-maximum-size
。
如果您想自动截断缓冲区,请运行以下 elisp 片段:
(add-hook 'comint-output-filter-functions 'comint-truncate-buffer)
调试器的输入和输出与其他任何内容一样是缓冲区内容——如果你想删除它,就这样做。例如,C-x h C-w
(mark-whole-buffer
后跟kill-region
)在perldb
缓冲区中工作得很好,并且最接近文本终端中的“清除屏幕”命令。