这是一个针对那些不熟悉Vim并来自其他文本编辑器(在我这里是Sublime Text)的答案。
我阅读了所有这些答案,但仍然不清楚。如果你足够阅读它们,一些事情开始变得清晰,但我花了数小时来回看问题。
首先,正如其他人所解释的:
标签页听起来很像标签,它们的行为也像标签,在大多数其他GUI编辑器中也很像标签,但它们不是。我认为这是在Vim中建立的一个错误的心理模型,不幸的是,它掩盖了你在标签页内拥有的额外功能。
我理解的第一个描述来自@crenate's answer,即它们相当于多个桌面。从这个角度看,你只会打开几个桌面,但每个桌面内会有许多GUI窗口打开。
我会说它们类似于其他编辑器/浏览器中的:
- 标签分组
- Sublime Text工作区(即项目中打开的文件列表)
当你看到它们那样时,你会意识到它们的强大之处,你可以轻松地将文件集(缓冲区)分组在一起,例如你的CSS文件、HTML文件和JS文件在不同的选项卡页中。这实际上非常棒。
其他我觉得令人困惑的描述
视口
这对我来说没有任何意义。虽然视口确实有一个定义的词典术语,但我只听过在:help window
文档中提到Vim窗口。在像Sublime Text、Visual Studio、Atom、Notepad++这样的编辑器中,我从未听说过视口这个术语。事实上,直到我开始尝试使用选项卡页之前,我都没有听说过它与Vim有关。
如果您将选项卡页视为多个桌面,则将桌面称为单个窗口似乎很奇怪。
工作区
这可能更有意义,字典定义如下:
用于临时存储的存储设施。
因此,它就像是一个存储一组缓冲区的地方。
一开始听起来像是Sublime Text工作区的概念,它是您在项目中打开的所有文件列表,详见 Sublime Text's concept:
sublime-workspace文件包含用户特定数据,例如打开的文件和每个文件的修改。
然而,更仔细考虑后,这确实是正确的。如果您把Vim标签页看作是Sublime Text项目,那么在每个项目中只打开一个文件并不合适,需要不断在项目之间切换。因此,使用标签页只打开一个文件很奇怪。
窗口集合
:help window
是以这种方式引用标签页的。此外,许多其他答案也使用了同样的概念。但是,如果您还不了解vim窗口是什么,那就没什么用处了,就像在沙子上建造城堡。
如上所述,vim窗口与视口相同,在这篇linux.com article文章中得到了很好的解释:
Vim中一个非常有用的功能是能够在一个或多个文件之间分割可视区域,或者只是分割窗口以更轻松地查看同一文件的两个部分。Vim文档将此称为视口或窗口,可以互换使用。
如果你曾经使用过Vim的帮助功能,比如使用:help topic命令或按下F1键,那么你可能已经熟悉了这个功能。当你进入帮助界面时,Vim会将视口分割开,并在顶部视口中打开帮助文档,同时保持底部视口中打开你的文档。
我觉得有点奇怪的是,标签页被称为窗口的集合,而不是缓冲区的集合。但我猜想你可以打开两个单独的标签页,每个标签页都有多个窗口,这些窗口都指向同一个缓冲区,至少目前我是这样理解的。
大多数情况下,^字符位于6键上,按下CTRL和6键即可获得我们所说的CTRL-^。但是在某些非美国键盘上,CTRL-^以另一种方式产生。
- ischeriad