{pkgs, ...}: { plugins.lualine = { enable = true; sections = { lualine_a = ["" "mode"]; lualine_b = [ "branch" "diff" ]; lualine_c = [ { name = "filetype"; extraConfig = {icon_only = true;}; } "filename" "diagnostics" { name = "lsp_progress"; extraConfig = { display_components = [ "lsp_client_name" [ "title" "percentage" "message" ] ]; colors = { use = true; lsp_client_name = { __raw = "colors.sapphire"; }; percentage = { __raw = "colors.blue"; }; spinner = { __raw = "colors.blue"; }; title = { __raw = "colors.subtext1"; }; message = { __raw = "colors.subtext0"; }; }; }; } ]; lualine_x = [""]; lualine_y = [ "encoding" "fileformat" ]; lualine_z = [ "progress" ]; }; winbar = { lualine_x = [ { name = "filename"; extraConfig = {path = 1;}; } { name = "filetype"; extraConfig = {icon_only = true;}; } ]; }; inactiveWinbar = { lualine_x = [ "diagnostics" { name = "filename"; extraConfig = {path = 1;}; } { name = "filetype"; extraConfig = {icon_only = true;}; } ]; }; extensions = ["fugitive" "lazy" "man" "neo-tree" "nvim-dap-ui" "quickfix"]; componentSeparators = { left = ""; right = ""; }; sectionSeparators = { left = ""; right = ""; }; theme = "catppuccin"; disabledFiletypes = { statusline = []; winbar = [ "help" "lazy" "neo-tree" "dapui_stacks" "dapui_watches" "dapui_breakpoints" "dapui_scopes" "dapui_console" "dap-repl" "fugitive" ]; }; }; extraPlugins = with pkgs.vimPlugins; [ lualine-lsp-progress ]; }