Vim缓冲区面包屑插件

5
在Vim中是否有任何插件可以让您按顺序移动已打开的缓冲区列表?Ctrl-6 可以在两个文件之间切换,但我需要更多功能。例如,如果我按顺序打开缓冲区a、b、c、d,则我想输入一些东西来回到c,回到b,再前往c等等。

只是好奇你想要与Ctrl-O / Tab(参见:http://vim.wikia.com/wiki/Jumping_to_previously_visited_locations)相比较的差异是什么,这不足以来回跳转吗?还是你需要比Ctrl-O更多的功能? - HidekiAI
2个回答

3

这可以通过内置的vim命令实现:bpreviousbnext,或者bpbn

以您的示例为例,打开文件,然后输入:bp以转到带有c的缓冲区,然后输入:bp,您就在缓冲区b中了,:bn将您带回缓冲区c

还很方便:例如键入:b1以转到缓冲区1(如果存在),:b myFile.txt转到包含文件名myFile.txt的缓冲区。

bpreviousbnext始终遵循缓冲区列表的顺序。您可以使用:ls命令观察此顺序。请注意,每个缓冲区都分配一个递增的数字。无论您在移动多少个窗口和/或选项卡之间,bpreviousbnext都将遵循此顺序。

例如,如果您已经像您的示例一样打开了a,b,c,d,并且您有两个分割的窗口,第一个窗口具有缓冲区a,第二个窗口具有缓冲区b,则在第一个窗口中进行bnext将把您带到缓冲区b,而在第二个窗口中进行bnext将把您带到缓冲区c


bp和bn正是我所需的。我过于苦思冥想,而没有仅寻找内置功能。谢谢。 - Kyle Heironimus
1
好的,在查看了一下之后,bp和bn并不是我需要的。如果我打开了几个窗口并且移动了一下,bp并不能带出我想要的缓冲区。事实上,它会带出看似随机的缓冲区。我有什么遗漏吗? - Kyle Heironimus
@KyleHeironimus 请看编辑。Vim的缓冲区处理/移动功能相当原始,甚至没有最近使用的功能。需要更多功能的人可以使用缓冲区管理插件,例如Ctrl-p。对于其他人来说,只需跟踪文件名和缓冲区编号就足够了。 - pb2q
ctrl-p很棒,但有时我只是在追踪代码调用堆栈,并且想要返回两个缓冲区,例如,而不必操纵ctrl-p甚至记住我在哪个文件中。 - Kyle Heironimus

2

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接