vim:隐藏底部的状态行

vim:隐藏底部的状态行

有时我使用非常小的终端窗口,需要每一块可用的空间。所以我想隐藏vim状态行。

我已经set laststatus=0隐藏了状态行之一。但还有另一篇内容是-- INSERT --"filename.ext" 22L 500C

我怎样才能隐藏这条线?

答案1

将这些行添加到您的.vimrc

let s:hidden_all = 0
function! ToggleHiddenAll()
    if s:hidden_all  == 0
        let s:hidden_all = 1
        set noshowmode
        set noruler
        set laststatus=0
        set noshowcmd
    else
        let s:hidden_all = 0
        set showmode
        set ruler
        set laststatus=2
        set showcmd
    endif
endfunction

nnoremap <S-h> :call ToggleHiddenAll()<CR>

然后在正常模式下,键入Shift + H以隐藏全部,再次键入以使它们可见。

您可以更改<S-h>为任何您想要的键。

答案2

如果其他人来这里寻找如何禁用状态栏(两个栏的顶部之一)

据说set laststatus=0应该有效。然而我注意到这在我的系统中不起作用,vimrc但如果为每个 vim 会话手动设置,它就会起作用。

为了解决这个问题,我autocmd在我的内部添加了一个.vimrc来覆盖任何现有的最后状态设置:

# ~/.vimrc

" Hide Status Line
set laststatus=0 " For some reason this doesnt work
autocmd BufRead,BufNewFile * set laststatus=0 " This will work instead

答案3

该设置会隐藏、和模式下最后一行中的、、等noshowmode消息。--Insert----Replace----Visual--insertreplacevisual

set noshowmode

相关内容