设置 gnome-terminal 或其他模拟器的行数

设置 gnome-terminal 或其他模拟器的行数

我知道存在stty,它允许设置虚拟控制台中的行数,例如 tty1。然而,这似乎不适用于 gnome-terminal 或 xterm。因此,问题是,无论窗口大小如何,如何限制终端模拟器中的行数?换句话说,如果stty rows 20在 tty1 中我可以看到输出开始滚动到第 20 行(而不是我的机器上的默认 34 行),我将如何使用终端模拟器实现相同的效果?

答案1

@sebastian 指出这些是相关的,但它们只解决了问题的一部分:

这里的一些讨论更相关,但仍然没有帮助:

当你stty这样使用时

stty rows 20

您告诉操作系统您的终端有 20 行。这可能是正确的,但如果不正确,您将会看到意外的行为。和最多终端,如果你有 25真实的并告诉系统您只有 20 条线,应用程序将继续使用剩余的 5 条线。

Linux 在这里很不寻常:您可以使用该命令减少虚拟控制台中显示的行数stty(这会对虚拟机产生有趣的效果)。 Linux 将控制台初始化为模式它支持给定数量的行和列。该stty命令告诉控制台 I/O 驱动程序少用它。 (尝试)将大小增加到超出初始化模式限制的类似命令会失败。

第一组链接的共同特征是,某些终端中有一个首选项对话框,可让您选择初始窗口大小。这与 Linux 的初始化(几乎)相同模式对于终端。但:

  • 没有提及更改通常窗口大小(在初始限制内)的方法,并且
  • 没有提及确保窗口大小限制保持不变的方法。

其他链接甚至不太相关,因为它们主要是关于如何初始化Linux控制台的讨论(一些细节错误......)模式

回到缺失的部分:

  • xterm 有一个实用程序resize它(对于许多终端)可以更改窗口大小。如果您输入

    调整大小-s 20 80

    然后 xterm(和 gnome-terminal)会将其窗口更改为 20 行(和 80 列)。根据 xterm 的编译方式,您可能必须选择允许窗口操作菜单条目(因为该功能被某些人认为是一个漏洞)。

  • 防止手动调整窗口大小更加困难。如果您不这样做,那么当有人(意外)第一次调整窗口大小时,您的 20 行调整大小就会丢失。

许多窗口管理器允许您自定义单个窗口,从而删除调整手柄大小。以下是讨论该主题的一些链接:

用于设置最初的xterm 窗口的大小,您可以使用-geometry选项或相关geometry资源。它使用 X Toolkit,其设置在X(7)手册页。该部分为几何规格是继续阅读的好地方。

相关内容