diff options
Diffstat (limited to '.vim/init.lua')
| -rw-r--r-- | .vim/init.lua | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/.vim/init.lua b/.vim/init.lua index a3d7487..51f3ade 100644 --- a/.vim/init.lua +++ b/.vim/init.lua @@ -163,24 +163,30 @@ function _G.statusline() local sl = '' -- left sl = sl .. hi - sl = sl .. statusline_hi(' ⢷', '%#StatusLineIcon#', hi) + sl = sl .. statusline_append(' ⢷', '%#StatusLineIcon#', hi) sl = sl .. [[ %<%F %-m %-r ]] + -- right sl = sl .. [[ %= ]] -- spacer local lsp_spinner = require('spinner').status(vim.fn.bufnr()) + sl = sl .. statusline_append(lsp_spinner, '%#StatusLineJobs#', hi) + local lsp_diagnostics = statusline_lsp_diagnostics(vim.fn.bufnr()) + sl = sl .. statusline_append(lsp_diagnostics, '%#StatusLineDiagnostics#', hi) + + local lsp_lightbulb = require('nvim-lightbulb').get_status_text() + sl = sl .. statusline_append(lsp_lightbulb, '%#StatusLineLightbulb#', hi) - sl = sl .. statusline_hi(lsp_spinner, '%#StatusLineJobs#', hi) - sl = sl .. ' ' - sl = sl .. statusline_hi(lsp_diagnostics, '%#StatusLineDiagnostics#', hi) sl = sl .. [[ %l:%v %y ]] return sl end -function _G.statusline_hi(element, hi, default) +-- statusline_append +-- does item highlighting and conditionnal spacing +function _G.statusline_append(element, hi, default_hi) if not element or element == '' then return '' end - if not (default == '%*') then hi = '' end - return hi .. element .. default + if not (default_hi == '%*') then hi = '' end + return hi .. element .. default_hi .. ' ' end function _G.statusline_color(mode) local hi = '%*' |