I want to hide the statusline, I don't ever use nor care about what is written in it. The problem is vim doesn't offer a way to achieve that in a convenient manner. If I just do set laststatus=0 I will suffer from the artifact mentioned in this question. If I do set laststatus=1 and set fillchars=stl:\ the status line will be invisible but well, still take a line of space, which is annoying...

Here's how it looks right now, slight darker background just to show you that it's blocking the text behind it and is still taking one line of space https://i.stack.imgur.com/HvcAx.png

Is there a way to hide the status line for good (both in single and multiple windows mode) without suffering from the artifacts mentioned in the previous question?

I'd appreciate any help, tired of fighting my tools to get them to do what I want.

  • I do not know the solution, but I know a plugin that mostly does the same thing: Goyo. You could investigate the source code and see if you can find a solution there. Sep 16, 2015 at 6:11
  • Goyo cuts even MORE of my screenspace, you can't set the bottom/top margins to 0, I don't get the point of that plugin why would anybody want less writing space?... but thanks for mentioning it cause it brought up similar plugins like vimroom, checking them out.
    – vexe
    Sep 16, 2015 at 6:46
  • Wish there was a vim callback when a horizontal split happens, that way I can set laststatus to 1 when it does, and back to 0 when there are no more horizontal splits.
    – vexe
    Sep 16, 2015 at 7:36
  • And no luck with all the plugins, I tried 4 'distraction free' plugins. I was always able to reproduce the the horizontal split artifact mentioned in the link in my question.
    – vexe
    Sep 16, 2015 at 8:01
  • My point was not that you use Goyo, but that Goyo manages to remove the statusline with no artifacts (as far as I know). And yes, it cuts screenspace, but that is by design: The point of Goyo is to give a non distracting buffer with the desired width and height. Personally, I use this sometimes when I write code and/or prose, and I like it. Sep 16, 2015 at 10:48

1 Answer 1


It is not posssible, to completly hide the statusline, if there are multiple windows. You can tweak the StatusLine and StatusLineNC highlighting groups (Note, even if you clear those groups completly, Vim will fall back and use '=' and '^' to dispaly something sane.), but basically that line will always be shown, and can't be used to display the buffer content. If you think about it, this makes sense, since for vertical splits, you couldn't tell where one buffer ends and the next one starts.

  • It would make sense if there's a horizontal split (okay I understand vim needs to visually separate the horizontal parts), but not in vertical splits (like in the picture above), it makes no sense to visually separate my buffer window from the cmd line...
    – vexe
    Sep 16, 2015 at 6:32
  • yes, i meant horizontal. Anyway, there is no way around it as far as i know Sep 16, 2015 at 9:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.