如何让Vim在我要求的位置打开一个已经打开的文件?

如何让Vim在我要求的位置打开一个已经打开的文件?,vim,vi,Vim,Vi,Vim有一个恼人的行为,我似乎无法浓缩到足够的程度,向搜索引擎寻求解决方案: 假设我在选项卡1中打开了两个窗口,分别显示文件a和文件b,在选项卡第2页打开了一个窗口,其中包含文件c。在第1页的选项卡中,在包含文件\u b的窗口中,我运行命令 :e /path/to/file_c 我要做的是在当前选项卡第1页窗口中打开file_c,其中包含file_b。实际发生的是,它将我切换到第2页的选项卡,其中已经包含文件\u c 显然有些人认为这是一个特性,但是切换到Tab页2,关闭 FielyC.C/代

Vim有一个恼人的行为,我似乎无法浓缩到足够的程度,向搜索引擎寻求解决方案:

假设我在选项卡1中打开了两个窗口,分别显示
文件a
文件b
,在选项卡第2页打开了一个窗口,其中包含
文件c
。在第1页的选项卡中,在包含
文件\u b
的窗口中,我运行命令

:e /path/to/file_c
我要做的是在当前选项卡第1页窗口中打开
file_c
,其中包含
file_b
。实际发生的是,它将我切换到第2页的选项卡,其中已经包含
文件\u c

显然有些人认为这是一个特性,但是切换到Tab页2,关闭<代码> FielyC.C/代码>窗口,回到Tab页1,重新打开它是一件痛苦的事。换句话说,我不想只打开
文件c
,我想打开
文件a
旁边的
文件c

我怎样才能禁用这个“帮助”并让Vim在我告诉它的地方打开一个文件


编辑:将“窗口”和“窗格”更改为“选项卡”和“窗口”,这似乎是Vim术语。

这不是Vim的默认行为。您的
.vimrc
中有一个插件或配置设置导致此问题。通过在没有插件的命令行上运行vim,您可以快速测试类似的内容:

$ vim -u NONE

你说的窗户和窗格是什么意思?窗口是Vim窗口、Vim选项卡页面还是窗口管理器窗口?我猜你指的是Vim窗口,是真的吗?@AlexP,我指的是Vim标签页。所谓窗格,我指的是选项卡的分区。Vim有垃圾术语。“tab”和“split”更容易理解,如果描述在同一选项卡或split中打开的多个文件(其中只有一个文件可见),则“buffers”更容易理解。请编辑您的问题以保持连贯性。包括使Vim进入您所处状态的最少步骤数。如果我有一个带有文件a和文件b的选项卡,另一个选项卡带有文件c,并且我在第一个选项卡中执行
:e file_c
,则第一个选项卡上会出现
文件c
,而我不会被发送到第二个选项卡。您可能有导致这种行为的插件,或者您可能没有提出一个连贯的问题。@AndyRay:Vim有连贯的术语。缓冲区是文本块,它可能与文件关联,也可能与文件无关。窗口是进入缓冲区的视图;并非所有缓冲区都有关联的窗口,并且一个缓冲区可以显示在多个窗口中。但是,是的,我同意,最初的问题描述了不寻常的行为。通常,
:edit
会将文件加载到当前窗口中,即使它已经显示在另一个窗口中。