I'm making tentative steps into using tabs in Vim. It seems a bit ridiculous, I've been using tabs in everything for the last 18 years:
- Visual Studio
- Every browser since Opera came up with them
- Sublime Text
- Bash terminals
As you can see it's mostly Windows, but I really want to switch to proper free and open tools for my dev work, so I want to switch off Sublime Text into Vim.
I've also been a fairly basic user of Vim for 18 years. I only just realised that Vim does have tabs in it! Don't I feel clever...
So ok, great so Vim has tabs, but really they're not tabs, but they are, but they're not.
The Vim wiki on tab 'pages' has a mildly helpful start:
In Vim, each file is loaded into a buffer, which can be displayed in any number of windows, in any number of tabs.
I can just about get that, they're really flexible, which I can imagine is great. You could split a single file across tabs I'd imagine, I've never felt the need to do that, but I'm sure there's a use case for it.
But then the wiki falls off the edge of my knowledge whilst at the same time trying to claim they're making it easier for me:
The easiest way to think about tab pages in Vim is to consider them to be viewports, layouts, or workspaces.
Ok... so as it's so easy could someone explain to me what the following are in terms of Vim:
P.S. I've been found a helpful answer on this SO question on Using Vim's tabs like buffers:
A buffer is the in-memory text of a file.
A window is a viewport on a buffer.
A tab page is a collection of windows.
But again that doesn't explain what a viewport is, or a layout or a workspace. None of which I've heard of in terms of an editor before. (Well actually Sublime Text has workspaces but I'm sure they mean something different there)
Yes, I could keep googling down the rabbit hole, but I didn't expect the rabbit hole to be this deep.