24

我有一个简单的要求:我想显示我当前正在编辑的缓冲区的编号。我不想键入:buffers(或等效项),但在我的状态栏中显示此数字以及文件名、当前列信息等。

有没有办法做到这一点?在这一点上,内置帮助不是很有指导意义。

4

4 回答 4

36

:h statusline显示所需的每一点帮助。

我有以下内容.vimrc

" Status Line {  
        set laststatus=2                             " always show statusbar  
        set statusline=  
        set statusline+=%-10.3n\                     " buffer number  
        set statusline+=%f\                          " filename   
        set statusline+=%h%m%r%w                     " status flags  
        set statusline+=\[%{strlen(&ft)?&ft:'none'}] " file type  
        set statusline+=%=                           " right align remainder  
        set statusline+=0x%-8B                       " character value  
        set statusline+=%-14(%l,%c%V%)               " line, character  
        set statusline+=%<%P                         " file position  
"}  
于 2011-04-05T06:18:14.847 回答
28

要在不配置任何内容的情况下获得答案:

:echo bufnr('%')

于 2012-06-24T04:15:30.090 回答
4

您需要%n在您的设置中列出statusline:help statusline在 vim 中尝试。

于 2011-04-05T06:18:53.703 回答
1
set statusline=%!bufnr('%')

Also see :help status-line

于 2011-04-05T06:20:23.180 回答