如何在 vim 中设置制表符线宽度?

如何在 vim 中设置制表符线宽度?

我有两个垂直分割窗口。我希望将标签行设置为仅第一个窗口的宽度,这样新打开的标签就不会与第二个窗口重叠。有办法吗?

答案1

您需要编写一个提供自定义标签行的函数,并将其安装到'tabline'设置中。(请注意,这不适用于带有图形标签行的 GVIM。)

帮助中:help setting-tabline有一个可运行的示例,它模拟了默认的 tabline。您需要对其进行操作以将宽度限制为第一个窗口的宽度,您可以使用 检索该宽度winwidth(1)。要使您的 tabline 也能正确处理双倍宽度的字符,strdisplaywidth()可以使用较新的函数。

你看,这是可行的,但我怀疑这种努力是否值得获得利益(我看不到)。

答案2

您或许可以操纵tabline(参见:h setting-tabline)选项来实现您的目标,但是...当您达到十几个标签时,由于可用宽度的限制,标签行的实用性已经非常有限,因此,如果您将其减少 50% 或更多,它的实用性就会更小。

这种行为的意义何在?它有什么好处?你的最终目标是什么?

相关内容