Is there a way to move a split page to a new tab in Vim?
-------------------------------------------------------------------------------
Become or hire the top 3% of the developers on Toptal https://topt.al/25cXVn
-------------------------------------------------------------------------------
Music by Eric Matyas
https://www.soundimage.org
Track title: The World Wide Mind
--
Chapters
00:00 Question
00:22 Accepted answer (Score 91)
00:50 Answer 2 (Score 4)
01:14 Answer 3 (Score 2)
03:11 Thank you
--
Full question
https://superuser.com/questions/117969/i...
--
Content licensed under CC BY-SA
https://meta.stackexchange.com/help/lice...
--
Tags
#vim #gvim
#avk47
Become or hire the top 3% of the developers on Toptal https://topt.al/25cXVn
-------------------------------------------------------------------------------
Music by Eric Matyas
https://www.soundimage.org
Track title: The World Wide Mind
--
Chapters
00:00 Question
00:22 Accepted answer (Score 91)
00:50 Answer 2 (Score 4)
01:14 Answer 3 (Score 2)
03:11 Thank you
--
Full question
https://superuser.com/questions/117969/i...
--
Content licensed under CC BY-SA
https://meta.stackexchange.com/help/lice...
--
Tags
#vim #gvim
#avk47
ACCEPTED ANSWER
Score 94
Very easily, use CTRL+W, SHIFT+T.
See the help page:
:help CTRL-W_T
Note that this is case sensitive: <C-W>T
is different to <C-W>t
.
ANSWER 2
Score 4
The long-and-straight-forward way would be to open a new tab and open the file's buffer there.
:tabnew
:b FILE_NAME
:b
can TAB
-complete from arbitrary parts of the file name, so this shouldn't take too long.
ANSWER 3
Score 2
Canonical Solution
Suppose there are two buffers:
:ls
1 #h "match_this_partially.md" line 1
2 %a "food/tacos.txt" line 1
You currently have food/tacos.txt
open. You want to open match_this_partially.md
in a new tab.
Simply use the following:
:tab sb partial
-- or --
:tab sb 1
You can also use wildmenu tab completion in place of partial
.
long form:
:tab sbuffer {buffer}
help:
:help :tag
:help :sbuffer
Alternative Keyboard Solution
Open file in a new split open it in a new tab with the following:
<c-w>T
Use case
Note: for me ]b
simply is mapped with nnoremap <silent> ]b :silent execute v:count.'bnext'<cr>
If I have few buffers I might do something like this:
<c-w>v
-- create a new vertical split]b
-- navigate to next buffer (essentially with:bnext
)<c-w>T
-- open split in new tab (this destroys the split in the first tab)