From 31aa73fcee3b018f3afcf874085919aa29579df0 Mon Sep 17 00:00:00 2001 From: kiri Date: Mon, 1 Dec 2025 01:38:31 +0100 Subject: [PATCH] Add lualine and bufferline --- modules/home-manager/nixCats/default.nix | 2 + .../nixCats/lua/plugins/editor.lua | 7 -- .../home-manager/nixCats/lua/plugins/ui.lua | 69 +++++++++++++++++++ 3 files changed, 71 insertions(+), 7 deletions(-) diff --git a/modules/home-manager/nixCats/default.nix b/modules/home-manager/nixCats/default.nix index b34e436..a5c768b 100644 --- a/modules/home-manager/nixCats/default.nix +++ b/modules/home-manager/nixCats/default.nix @@ -101,6 +101,8 @@ let colorful-menu-nvim + lualine-nvim + bufferline-nvim ]; }; diff --git a/modules/home-manager/nixCats/lua/plugins/editor.lua b/modules/home-manager/nixCats/lua/plugins/editor.lua index 6440ff0..d2d7b94 100644 --- a/modules/home-manager/nixCats/lua/plugins/editor.lua +++ b/modules/home-manager/nixCats/lua/plugins/editor.lua @@ -176,13 +176,6 @@ require("lz.n").load({ -- Add/delete/replace surroundings (brackets, quotes, etc.) require("mini.surround").setup() - -- Simple and easy statusline. - local statusline = require("mini.statusline") - statusline.setup({ use_icons = true }) - statusline.section_location = function() - return "%2l:%-2v" - end - local files = require("mini.files") files.setup() vim.keymap.set("n", "e", function() diff --git a/modules/home-manager/nixCats/lua/plugins/ui.lua b/modules/home-manager/nixCats/lua/plugins/ui.lua index 8e1154f..3eafc69 100644 --- a/modules/home-manager/nixCats/lua/plugins/ui.lua +++ b/modules/home-manager/nixCats/lua/plugins/ui.lua @@ -126,4 +126,73 @@ require("lz.n").load({ }) end, }, + { + "lualine.nvim", + event = "VimEnter", + after = function() + require("lualine").setup({ + options = { + icons_enabled = true, + globalstatus = true, + component_separators = "", + section_separators = "", + }, + sections = { + lualine_a = { "mode" }, + lualine_b = { "branch", "diagnostics" }, + lualine_c = { "filename" }, + + lualine_x = { "lsp_status" }, + lualine_y = { "progress" }, + lualine_z = { "location" }, + }, + }) + end, + }, + { + "bufferline.nvim", + enabled = false, + event = "VimEnter", + after = function() + require("bufferline").setup({ + options = { + mode = "buffers", + numbers = "none", + + separator_style = "thick", + + -- Integrations + diagnostics = "nvim_lsp", + diagnostics_indicator = function(count, level, diagnostics_dict, context) + local icon = level:match("error") and " " or " " + return " " .. icon .. count + end, + + -- Visuals + show_buffer_close_icons = false, + show_close_icon = false, + color_icons = true, + show_tab_indicators = true, + }, + + highlights = { + fill = { + bg = "NONE", -- Makes the empty space transparent/blended + }, + background = { + bg = "NONE", -- Makes inactive buffers transparent/blended + }, + -- Optional: Fix separators if they look "cut off" + separator = { + fg = { attribute = "bg", highlight = "Normal" }, + bg = "NONE", + }, + separator_visible = { + fg = { attribute = "bg", highlight = "Normal" }, + bg = "NONE", + }, + }, + }) + end, + }, })