有没有办法禁用某些窗口的状态行?

时间:2011-08-22 02:20:03

标签: vim

我使用的缓冲区插件创建了一个包含缓冲区列表的单独窗口。这不必要地具有其自身的状态线,占用空间。有没有办法禁用某些缓冲区/窗口的状态行?

4 个答案:

答案 0 :(得分:3)

不幸的是,无法切换状态行可见性 有选择地对某些窗户。唯一相关的功能是受控制的 通过laststatus选项定义何时显示状态行 最后一个窗口。

您可能对显示列表的buftabs插件感兴趣 缓冲区在状态行中保存垂直屏幕空间以进行编辑。

答案 1 :(得分:1)

尝试模拟缺少状态行:

let &l:statusline='%{getline(line("w$")+1)}'

。也几乎可以在那里放置正确的突出显示,但实现应该很慢。

答案 2 :(得分:0)

实际上你可以编写一个小函数并将它放在自动命令中,这将根据当前缓冲区名称禁用和启用laststatus选项。 这样的事情:

au BufEnter,BufWinEnter,WinEnter,CmdwinEnter *
                       \ call s:disable_statusline('buffer name')
fun! s:disable_statusline(bn)
   if a:bn == bufname('%')
       set laststatus=1
   else
       set laststatus=2
   endif
endfunction

答案 3 :(得分:-1)

您可以在本地设置:

setlocal statusline=