statusline.lua
statusline.lua copied to clipboard
A zero-config minimal statusline for neovim written in lua featuring awesome integrations and blazing speed!
Statusline.lua
Statusline
Tabline [BONUS]
Light Theme Compatible
A tidy statusline for neovim written in lua featuring
🔋 Batteries Included. No configuration needed.
🕴 Minimalist Mode Indicators
🔥 0.4ms Startup Time
👁 Git Status [Signify]
🌴 Git Branch
❗️ Diagnostics Status [Ale & Native Nvim LSP] --> Native LSP set as default
🔦 LSP Current Function [builtinlsp.current_function] --> Requires require('lsp-status').on_attach(client)
💡 LSP Code Action Indicator [textDocument/codeAction] --> Requires kosayoda/nvim-lightbulb/
💯 LSP Progress Messages ⠼ [vim.lsp.util.get_progress_messages]
❓ File Modified Status
👌 Clean Ruler
⚙️ File Icon Support [Nerd Font]
🙌 Snipped File Paths
😻 Tabline Support
🎨 Smooth colours inspired by gruvbox
🚀 More to come!
Installation
vim-plug
Plug 'beauwilliams/statusline.lua'
packer.nvim
use 'beauwilliams/statusline.lua'
Configuration
Disable Tabline
local statusline = require('statusline')
statusline.tabline = false
Enable ALE Diagnostics Display
-- NOTE: Nvim Native LSP is displayed default
-- I personally prefer ALE, with nathunsmitty/nvim-ale-diagnostic piping LSP diags
-- With ALE you can get errors displayed without explicitly needing an LSP server
local statusline = require('statusline')
statusline.lsp_diagnostics = false
statusline.ale_diagnostics = true
Enable Global Statusline (version 0.7+)
-- This setting will mean that you have one single statusline drawn accross the entire display
lua vim.o.laststatus=3
Optional Dependencies
- Signify [Git Status]
- Ale [Diagnostics] --> I recommend ALE with nathunsmitty/nvim-ale-diagnostic
- Native LSP [Current Function] --> require('lsp-status').on_attach(client)
- Native LSP [Diagnostics] --> Must have a relevant language server to provide diagnostics
- Native LSP [Progress %] --> Must have a relevant language server to provide progress messages
- Native LSP [Code Actions] --> Requires kosayoda/nvim-lightbulb/
Planned Improvements 😼
- [ ] Completely move codebase to lua
- [ ] Async everything
- [x] Shed Fugitive
- [x] Shed Nvim-Webdev-Icons
- [x] Support Native LSP
- [ ] Theme Support
Developers Only
Contributing
Please before submitting a PR install stylua here
And run stylua .
from your shell in the root folder of focus.nvim
This will format the code according to the guidlines set in stylua.toml