From 7c24bf6c9482ef4f78c5a5878c6c627e8a7c0550 Mon Sep 17 00:00:00 2001 From: Roman Date: Fri, 18 Sep 2026 02:19:00 +0200 Subject: [PATCH] declutter statusline --- .../.config/nvim/lua/romanzy/plugins/mini.lua | 37 ++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/nvim/.config/nvim/lua/romanzy/plugins/mini.lua b/nvim/.config/nvim/lua/romanzy/plugins/mini.lua index 3581bef..a6fc336 100644 --- a/nvim/.config/nvim/lua/romanzy/plugins/mini.lua +++ b/nvim/.config/nvim/lua/romanzy/plugins/mini.lua @@ -58,7 +58,42 @@ vim.api.nvim_create_autocmd("ColorScheme", { callback = set_mini_diff_highlights, }) -statusline.setup({ use_icons = true, }) +local function statusline_filetype() + local filetype = vim.bo.filetype + if filetype == "" then + return "" + end + + local icon = MiniIcons.get("filetype", filetype) + return icon .. " " .. filetype +end + +-- Custom de-cluttered status line output. The default was waaay to noisy +local function statusline_active() + local mode, mode_hl = statusline.section_mode({ trunc_width = 120 }) + local git_info = statusline.section_git({ trunc_width = 40 }) + -- local diff_info = statusline.section_diff({ trunc_width = 75 }) + -- local diagnostics = statusline.section_diagnostics({ trunc_width = 75 }) + local lsp = statusline.section_lsp({ trunc_width = 75 }) + local filename = statusline.section_filename({ trunc_width = 140 }) + local fileinfo = statusline_filetype() + local search = statusline.section_searchcount({ trunc_width = 75 }) + + return statusline.combine_groups({ + { hl = mode_hl, strings = { mode } }, + { hl = "MiniStatuslineDevinfo", strings = { git_info, lsp } }, + "%<", + { hl = "MiniStatuslineFilename", strings = { filename } }, + "%=", + { hl = "MiniStatuslineFileinfo", strings = { fileinfo } }, + { hl = mode_hl, strings = { search } }, + }) +end + +statusline.setup({ + use_icons = true, + content = { active = statusline_active }, +}) cmdline.setup({})