按编号跳转到 vim 缓冲区?

Jump to vim buffer by number?

我在顶部有一些 "buffer bar",在浏览器中像标签一样显示我的缓冲区。

在浏览器中,我可以按 ctrl-1、ctrl-2 等键跳转到选项卡。

我可以在 vim 中做什么来快速跳转到我想要的缓冲区?

:b x,其中 x 是您要编辑的缓冲区的编号。

编辑:如果您想模仿制表符行为,您也可以使用制表符,vim 也支持制表符,ctrl + page up/down 也支持制表符。有关文档,请参阅 help tabs

I have some "buffer bar" at the top, showing my buffers like tabs in a browser.

What can I do in vim to jump to the buffer I want really quickly?

由于 Vim 中没有 built-in “缓冲栏”,您必须安装了一个 third-party 插件,希望它附带一些文档。你读过它吗?由于您没有告诉我们您使用的是什么插件,我们只能用 built-in 命令来回答。

导航到缓冲区 6 的 built-in 命令是 :b6。如果您不知道缓冲区的编号,您可以:

  • 使用 :bn[ext]:bp[revious]
  • 循环缓冲区列表
  • :ls(或:buffers,或:files,三者同义)后跟:b6
  • :b foo<Tab>.

最后一种方法是最有效和可扩展的。

Oh I just checked with :buffers, and the buffers I have open have the numbers 5, 6, 9, etc. all random. How do I choose from these?

不,缓冲区编号根本不是“随机”的。将缓冲区添加到缓冲区列表时,会为其分配一个固定编号,该编号等于列表中最后一个缓冲区的编号加 1。列表中的空洞要么是由于:

  • 一些缓冲区被隐藏了,你可以通过:ls!,
  • 看到它们
  • 或一些缓冲区从列表中删除。