33

minibufexplorer是 vim 的持久缓冲区管理器,它位于自己的窗口中。它显示了您打开的所有缓冲区,并带有颜色指示符,说明哪些当前在窗口中可见,哪些有未保存的更改。

这是一个很棒的插件,我一直被它迷住了。如果没有持久的缓冲区显示,我发现我现在感到迷茫。

问题是,minibufexpl 往往会妨碍其他窗口控件。因为它是一个普通的 vim 窗口,它的行为就像一个,如果你想说,旋转你的其他工作窗口会引起问题。Minibufexplorer 的窗口也会旋转,这显然不太理想。

我真正需要的是一个插件,它可以持续显示打开的缓冲区,但它的行为不像窗口。我不需要文件导航或其他任何东西,因为我为此使用了其他方法。也许甚至像 minibufexpl 这样能够在缓冲区上显示信息的扩展状态栏?

4

7 回答 7

36

GitHub 上有一个新的 minibufexpl.vim 分支,旨在解决其中的一些问题。它的新功能之一是“防止通过调整窗口大小命令调整 MBE 缓冲区的大小”,并且它不受C-WC-R(rotate windows) 等命令的影响。

https://github.com/fholgado/minibufexpl.vim

于 2011-11-13T21:03:11.897 回答
17

虽然这不是您问题的确切答案,但我认为您会发现它很有用。

FuzzyFinder插件为您打开的缓冲区提供了良好的可视化表示,并且还提供了在它们之间跳转的好方法 - 模糊匹配。

它的缓冲区列表不是“持久的”,这意味着它只按需显示,但我认为这是一个优势:首先,缓冲区列表不会占用宝贵的屏幕空间,其次是模糊匹配,我觉得不需要查看它根本没有。

考虑下面的截图:为了切换到ext_gcd.py我只需要按
,bg,b调用缓冲区列表并g模糊匹配名称包含字母g的唯一缓冲区。

在此处输入图像描述

PS:它也适用于文件。我的映射如下:

map <leader>f :FufFileWithCurrentBufferDir **/<C-M> 
map <leader>b :FufBuffer<C-M>

,f在这种情况下,从放置当前缓冲区的目录开始递归地模糊匹配文件。

于 2011-02-01T21:18:31.437 回答
14

旧线程,但对于其他搜索结帐的人来说,请查看vim-airline插件。它非常受欢迎,并且与其他插件有很好的兼容性。

使用 g:airline#extensions#bufferline#enabled 选项来获取您要查找的内容。

于 2013-11-10T19:09:37.013 回答
9

我真的很喜欢buftabs.vim,因为它在状态行中保留了关于我打开了哪些缓冲区的信息,当我需要以清晰的方式在那里输入时,这些信息就会消失。我发现这比minibufexplorer更可取,因为我的光标永远不会意外地出现在只读暂存缓冲区中,该缓冲区占用了不必要的空间。它还做了一些魔术映射,:bnext:blast允许在缓冲区之间跳跃以获得更“熟悉”的感觉。

在此处输入图像描述

于 2011-02-01T19:03:17.787 回答
6

您可以使用ctrlp,这是一个用纯 Vimscript 编写且高度可配置的插件。

:CtrlPBuffer打开一个包含打开缓冲区列表的窗口

你可以开始打字了,它是一个模糊查找器。

于 2013-11-10T20:48:37.020 回答
1

还有Tagma 缓冲区管理器。我还没有使用它,但总有一天我会试一试,肯定的。

于 2012-11-07T20:58:52.523 回答
0

你可以试试Powerline's tabline

我尝试了很多插件,但它们往往会占用命令行或状态行,或者当它们太多时不会显示整个选项卡。

是一个屏幕截图(顶部栏是tabline!):

您需要set showtabline=2在安装 Powerline 后添加 .vimrc。

如果你想去第8个缓冲区,:b 8就会跳到它!

希望这可以帮助。

于 2014-11-23T07:35:51.980 回答