2010-07-25 81 views
2

我正在使用MiniBufExplorer插件在我的Vim窗口顶部显示打开的缓冲区列表。我也使用FuzzyFinder插件来打开文件,以防万一。如何阻止Vim在只读窗口中打开文件时打开新窗口?

的问题是,如果我有-MiniBufExplorer-窗口集中,我打开一个文件时,窗口会分裂:

MMMMMM  MMMMMM 
AAAAAA  AAAAAA M = -MiniBufExplorer- 
AAAAAA --> AAAAAA A = some open file 
AAAAAA  BBBBBB B = the file I just opened 
AAAAAA  BBBBBB 

我的猜测是,Vim的确定-MiniBufExplorer-窗口不应该被用来打开一个文件,并决定创建一个新窗口来保存新的缓冲区。

相反,我想文件B只是在以前A占用的窗口中打开。如果A的窗口具有焦点,则按照我希望的方式进行;这只是当-MiniBufExplorer-专注,我得到不必要的分裂。

我不精通Vim的脚本,而不是非常熟悉的窗/缓冲模式,所以我不知道它是多么的困难做到这一点。有任何想法吗?

+0

嗨,我有一个类似的问题。你有没有解决这个问题? – 2011-01-11 08:43:43

+0

@Edan帽儿:对的MacVim 7.2没有,可惜没有...... – Thomas 2011-01-12 06:22:23

+0

刚试过的minibuf插件6.3.2版本(52):http://www.vim.org/scripts/download_script.php?src_id=3640和它工作正常。你可以提供更多关于你正在使用的vim版本的信息吗? – 2011-01-27 16:53:02

回答

0

我不认为MiniBufExplorer插件很好用。

我发现这个插件的一些错误。我现在删除这个插件,尝试其他的。

PS:我不使用这样的插件,只是CTRL + O,CTRL + I :)

当打开多个文件,这个插件是无用的。

0

您可以为命令行模式的缩写如下:

cabbrev ne new +only

这样做是什么使一个别名,那么当你键入ne VIM执行new +onlynew +only创建一个新文档并在其上执行only这会导致完整的窗口新文档。

你最好把那你的.vimrc和防止重映射您使用cnoreabbrev

cnoreabbrev ne new +only