![将 xterm 缓冲区大小更改为会话无限制](https://linux22.com/image/1453928/%E5%B0%86%20xterm%20%E7%BC%93%E5%86%B2%E5%8C%BA%E5%A4%A7%E5%B0%8F%E6%9B%B4%E6%94%B9%E4%B8%BA%E4%BC%9A%E8%AF%9D%E6%97%A0%E9%99%90%E5%88%B6.png)
这个问题类似于如何增加默认 xterm 缓冲区大小。我想在 OpenBSD 5.7 上将我的 xterm 缓冲区大小(缓冲区是我可以向后滚动的大小)更改为无限制。
其他问题(和类似问题)指出使用-sl XXX
,其中XXX
大小为 1000。但我想要无限大小,而不是固定大小。我还想确保历史记录仅适用于会话,并且不会像命令历史记录那样持久化。最后,这是 OpenBSD,我没有~/.Xresources
。
答案1
xterm 的回滚受到限制,因为它分配了一个数组一次(实际上是 FIFO)来跟踪滚动的行。这样做一次比定期重新分配要快得多。
您可以将回滚限制设置为非常大的数字(甚至一百万),这对于实际目的来说可能已经足够长了。无论如何,当数据存储在内存中时,不存在“无限制”这一说法。
在2009年重写,由于更新缓冲区的方式,回滚的实际限制约为 10,000 行。现在,它基本上取决于您选择使用多少内存(但要注意的是,调整带有一百万行回滚的窗口大小可能会很慢)。