file0.txt
,file1.txt
,file2.txt
和file3.txt
。我以标签的顺序打开所有这些标签。因此,我的制表符排序是这样的:file0.txt
file1.txt
file2.txt
file3.txt
那么我想说而是重新排序我的标签,以便
file2.txt
在file1.txt
之前:file0.txt
file2.txt
file1.txt
file3.txt
我该怎么办去做?是否有Vim命令将当前选项卡向左或向右移动,或以其他方式对当前打开的选项卡进行重新排序?
#1 楼
您可以使用tabmove
命令。 (:help tabmove
会告诉您所有您需要知道的内容)该命令采用两种参数:
符号(
+
或-
)后跟数字::tabmove +2
会将您的2个标签页向右移:tabmove -2
会将标签向左移。也可以使用带有简单数字的命令来设置选项卡的位置: :tabmove 0
会将标签页放在第三个位置:tabmove 2
会将标签页放在最后一个位置我也将这些行放在我的
:tabmove
" move current tab to left/right
noremap <Leader><Left> :execute 'silent! tabmove ' . (tabpagenr()-2)<CR>
noremap <Leader><Right> :execute 'silent! tabmove ' . tabpagenr()<CR>
它们使您可以结合使用Leader + Right箭头和Leader + Left箭头来移动一个位置的当前选项卡,也许它们可能对您有用。
编辑:正如@TomMcDo在评论中指出的那样,以前的映射可以简化并且仍然可以正常使用:
noremap <Leader><Left> :tabmove -1<CR>
noremap <Leader><Right> :tabmove +1<CR>
评论
在您的映射中,为什么不使用:tabmove -1和:tabmove +1?
–tommcdo
15年7月3日在13:27
@tommcdo:好吧...几个月前我做了这些映射,现在我不知道我在想什么。当我在答案中复制它时,我没有想到任何事情。无论如何,您完全正确,我将编辑我的答案以使标题更简单:-)
–statox♦
15年7月3日在13:33