Vim已预先安装了标签:如何删除它们?

时间:2012-11-16 22:21:58

标签: vim tabs

检查以下屏幕截图:

Vim screenshot

我检查了所有插件/捆绑包,我使用Vundle而不是病原体。这是我的捆绑包列表:

" This one is required baby!
Bundle 'gmarik/vundle'

" All of my Vundle bundles
Bundle 'scrooloose/nerdcommenter'
Bundle 'scrooloose/nerdtree'
Bundle 'mattn/zencoding-vim'
Bundle 'tpope/vim-fugitive'
Bundle 'tpope/vim-markdown'
Bundle 'tpope/vim-repeat'
Bundle 'tpope/vim-surround'
Bundle 'spf13/PIV'
Bundle 'vim-scripts/YankRing.vim'
Bundle 'jeffkreeftmeijer/vim-numbertoggle'
Bundle 'PotHix/Vimpress'
" Color schemes
Bundle 'altercation/vim-colors-solarized'

我刚刚抓住了我的vimrc文件,以防你没注意到。我不知道其中任何一个都改变了缓冲行为,但我可能会弄错。

如何删除此类似标签的功能?要重现它,只需打开一个文件,然后抓取其他文件,然后将它们拖到Vim窗口顶部(而不是图标,窗口)。

2 个答案:

答案 0 :(得分:2)

Vim可以执行选项卡,但默认情况下它不显示tabline:如果创建选项卡,则tabline仅 创建,如果不创建选项卡你不要告诉它这样做。

如果您不想要标签,请不要使用它们。就这么简单。

根据您的评论,您可能会将Vim的标签与您在其他编辑器中习以为常的标签混淆。他们初看起来可能“看起来”一样,但他们的目的和实施方式与非常不同。

在Vim中,选项卡是一种组织工作区的方法:它们不能代表单个缓冲区。如果要在Vim中使用选项卡,这一点非常重要。你需要很多自律来实际上能够使用Vim标签作为TextMate / Sublime标签。如果你理解它们,你应该只使用标签。

在Vim中使用多个文件的正确方法是使用缓冲区和窗口以及正确的命令。但如果你真的想使用标签,这里有几个提示:

首先将此行添加到~/.vimrc

set switchbuf=useopen,usetab

使用此设置,许多操作(特别是在quickfix中)将跳转到缓冲区(在另一个窗口或另一个选项卡中),而不是在此处加载缓冲区。

然后你应该使用正确的命令:

:sb[uffer]
:sbn[ext]
:sbN[ext]
:sbl[ast]
:sbf[irst]
:sbr[ewind]

所有这些命令都会跳转到缓冲区 ,如果它显示在某处分开打开它。

从那里你现在可以做到:

:e file_a
(editing file_a)
:tabe file_b
(editing file_b in tab 2)
:sbN
(editing file_a in tab 1)
:sbn
(editing file_b in tab 2)
…

无需在多个标签中使用相同的缓冲区。

gt:tabl:tabn2相关的标签相关动作如果您了解标签作为工作空间的真实性质,则不应仅使用 切换到另一个文件的方法。

答案 1 :(得分:1)

修改找到更有效的设置:

set tabpagemax=1 showtabline=0
<$>在$ MYVIMRC内

文档:

                        *'showtabline'* *'stal'*
'showtabline' 'stal'    number  (default 1)
            global
            {not in Vi}
            {not available when compiled without the |+windows|
            feature}
    The value of this option specifies when the line with tab page labels
    will be displayed:
        0: never
        1: only if there are at least two tab pages
        2: always
    This is both for the GUI and non-GUI implementation of the tab pages
    line.

                        *'tabpagemax'* *'tpm'*
'tabpagemax' 'tpm'  number  (default 10)
            global
            {not in Vi}
            {not available when compiled without the |+windows|
            feature}
    Maximum number of tab pages to be opened by the |-p| command line
    argument or the ":tab all" command. |tabpage|