Sunday 31 March 2019

How do I edit an existing buffer in a new tab in vim?


Suppose I have started vim like this:


vim foo bar

Now I decide that I want each of those files in its own tab. Is there a way to do that without exiting vim and adding the -p option to my command line?



Answer



When you start vim like that, you don't get a vim client, the text editor is using the terminal or cmd prompt - the two files are in two different buffers. Use :ls to list the buffers:


:ls
1 %a "foo" line 6
2 "bar" line 0

The %a is the active buffer. You can use :b2 to switch to buffer 2 or use :bn to cycle to the next or :bp for previous. I prefer (CTRL-W v) to split windows vertically, rather than (CTRL-W s), which splits horizontally.


If you have 2 files loaded & no tabs (yet), you can, :tabnew and in the new tab type :b2


If you want to always have buffers loaded into their own tabs, check out this article.


No comments:

Post a Comment

How can I VLOOKUP in multiple Excel documents?

I am trying to VLOOKUP reference data with around 400 seperate Excel files. Is it possible to do this in a quick way rather than doing it m...