假设我在Emacs(M-x-perldb)上使用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
缓冲区中工作得很好,最接近于文本终端中的"清除屏幕"命令。