View & render · alpha · Neovim 0.10+ · 270 commits
ui.nvim
The frame around the window: statusline, tabline, theme assembly — standing on Neovim's own APIs rather than a distribution's. Started from roughly 4,500 lines of working statusline, tabline and theme code extracted out of a NvChad-based config, and replaced the coupling to NvChad and base46 symbol by symbol from there.
demos/ui.tape in a clean Neovim — re-recorded weekly
what is shown when
- :UI zen - the buffer alone, centred, everything else dimmed
- :UI color - a colour picker over the hex under the cursor
- ui.notify - vim.notify as level-coloured toasts
Install
{
"StefanBartl/ui.nvim",
opts = {},
} Alpha. All statusline, tabline and theme code stands on Neovim's own APIs — neither NvChad nor base46 are required any more, including by the reference host this plugin was extracted from. See the migration record for how it got there, and pin a commit if you depend on it.
Documentation
Recent commits
- docs chips.shape uses the current shape names
- fix kit: message_log 'more above' hint rendered blank despite room for it
- fix kit: message_log never resized past its 1-line placeholder, has_more_older dead-end hint, swapped key hints
- fix kit: cap message_log entries, hoist its namespaces
- feat kit: message_log -- paginated, collapsible, time-ordered entry list popup
- fix toast: bound the work a toast does (8 KB looked at, max_lines rows, ellipsis)
- fix toast: use the theme zindex.toast (70), toasts were hidden behind snacks pickers
- feat toast: width follows the text between a minimum and 40% of the editor
Combos
- Statusline segments
Each contributes one optional segment to ui.nvim's statusline -- none is a dependency, the segment is simply absent without it.
filetree.nvim , github_stats.nvim , runtime-analysis.nvim , recommender.nvim , sessions.nvim , sandbox.nvim