Everybody wants that line
Minimalistic, informative and elegant statusline for neovim. Plugin uses colors from your current colorscheme, so it looks natural. It adapts if you change colorscheme or switch to a light or a dark theme.
demo.copy.mov
Table of content
Features
- Zero dependencies, lightweight and fast
- Adaptive colors
- Neat winbar
- Buffer number and modified flag
- LSP diagnostics
- Git branch and git status
- Filename
- Clean ruler and filesize
- Global statusline or per window
- Support: Netrw, Quickfix List, Location List (soon) and Help
- Plugin support:
- Telescope,
- Neogit,
- Fugitive,
- Neo-tree,
- NvimTree,
- Buffer Manager,
- Dirbuf,
- Lazy,
- Packer
- If there is a plugin you'd like to see support for, please request a feature
Installation
Neovim v0.7.0 and newer.
lazy.nvim
{
"strash/everybody-wants-that-line.nvim",
config = function()
[your configuration here]
end
}
packer.nvim
use "strash/everybody-wants-that-line.nvim"
vim-plug
Plug "strash/everybody-wants-that-line.nvim"
Configuration
-- You can omit the config table
require("everybody-wants-that-line").setup()
-- or you can add it
require("everybody-wants-that-line").setup({
buffer = {
enabled = true,
prefix = "B:",
-- Placeholder before buffer number, e.g. "00001".
-- If you don't want additional symbols to be displayed,
-- set `symbol = ""` or `max_symbols = 0`.
symbol = "0",
-- Maximum number of symbols including buffer number.
max_symbols = 5,
},
diagnostics = {
enabled = true,
},
quickfix_list = {
enabled = true,
},
git_status = {
enabled = true,
},
filepath = {
enabled = true,
-- `path` can be one of these:
-- "tail" - file name only
-- "relative" - relative to working directory
-- "full" - full path to the file
path = "relative",
-- If `true` a path will be shortened, e.g. "/a/b/c/filename.lua".
-- It only works if `path` is "relative" or "full".
shorten = false,
},
filesize = {
enabled = true,
-- `metric` can be:
-- "decimal" - 1000 bytes == 1 kilobyte
-- "binary" - 1024 bytes == 1 kibibyte
metric = "decimal"
},
ruller = {
enabled = true,
},
-- Filename is a separate widget that is located
-- in the upper right corner of each open window.
filename = {
enabled = true,
},
-- Separator between components, e.g. " ... │ ... │ ... "
separator = "│",
})
Breaking changes
- 413944b
opts.buffer.show
is deprecated. Useopts.buffer.enabled
instead.
Contribution
If you found a bug please open an issue or request a feature. All contributions are welcome.