当我在vim中使用“:bn”和“:bp”在缓冲区之间切换时,我的状态行显示以下方便信息:
"foo.txt" 43 lines --88%-- ((1) of 3) 38,1 All
(我认为这是启用它的“set showmode”。) 但是“(1)”总是字面意思是“(1)” - 它不会随着我改变缓冲区而改变。 (“1”周围的parens也很奇怪。)
有谁知道如何解决这个问题?
ADDED:这可能与我的.vimrc中的一些坚果有关,就在这里:http://yootles.com/outbox/.vimrc
相关地,这是一个方便的技巧,使交换缓冲区真的无痛(.vimrc中的条目):
"left/right arrows to switch buffers in normal mode
map <right> :bn<cr>
map <left> :bp<cr>
提高可搜索性的关键字:vim,多个缓冲区,缓冲区之间的切换,奇怪的状态行。 [如果您正在寻找这个问题的答案,并在第一次尝试时没有找到这个,请在此处添加其他人!]
答案 0 :(得分:3)
vim显示(3的(1))的原因是因为参数列表。当你启动vim时,你可能包含3个文件名作为参数。因为你使用:bn /:bp来切换缓冲区而不是:n /:N来移动参数列表,你仍然在参数1上。阅读:h arglist-position。
答案 1 :(得分:1)
您可以自定义状态行的外观;例如,这是我的:
set laststatus=2 " all windows have statuslines
set statusline=%mb%n:%f%R%Y\ %l/%L,%c:%v
尝试查看
的帮助:help arglist-position
:help shortmess
我从来没有使用过这些选项,所以我不能给你一个详细的解释,但是只要稍微阅读一下你就应该到底了。
答案 2 :(得分:1)
在我的情况下,状态行是可以的,但gvim的标题看起来就像你说的那样。
您可以考虑将状态栏和 titlestring 更改为使用相同模式选项时的相同值。
为了方便地选择缓冲区,您可以使用
minibufexpl.vim:优雅的缓冲区浏览器 - 占用很少的屏幕空间
http://www.vim.org/scripts/script.php?script_id=159
或
0scan:基于标签搜索您可能想要查找的任何内容(ctags,buffers,...)
http://www.vim.org/scripts/script.php?script_id=2507