如何使用电力线显示 vim 中的所有缓冲区?

How to show all buffers in vim using powerline?

我想在状态线上显示所有缓冲区的名称(我使用电力线)。我希望当前缓冲区可以突出显示,而其他缓冲区则不会。当我使用 :bn:bp 时,它会突出显示已更改的缓冲区。我怎样才能做到?

我不知道如何用电力线做这样的事情,但是我遇到了 vim-buftabline 它可以按照你的要求做,但用的是 tabline 而不是状态线。

就我个人而言,我会忘记在状态栏或表格栏中执行此操作,因为很容易在任何一行中从 space 中 运行。我也会停止使用 :bn/:bp 并只使用 :b 直接跳转到有问题的缓冲区。

看看:b的力量:

  • 使用<tab>完成
  • 使用<c-d>列出完成
  • 使用部分文件名。例如:b foo。与 <tab>.
  • 配合使用效果很好
  • 通配符。例如:b foo*bar:b foo/**/bar
  • 可能想通过 set hidden
  • 使用 'hidden'
  • :b 的拆分变体是 :sb
  • 也接受缓冲区编号

常用映射:

nnoremap <leader>b :ls<cr>:b<space>

如需更多帮助,请参阅:

:h :b
:h :ls
:h 'switchbuf'
:h 'hidden'
:h 'tabline'

在 powerline 中,可以通过将以下行添加到您的 .vimrc 配置文件来显示打开的缓冲区列表:

set showtabline=2

这将在您的 vim 会话顶部添加一个额外的状态行,并突出显示活动缓冲区。

来源:Powerline documentation