local mocha = require("catppuccin.palettes").get_palette("mocha") local none = { fg = mocha.text, bg = mocha.none } local theme = { normal = { a = { fg = mocha.base, bg = mocha.lavender, gui = "bold" }, b = none, c = none, x = none, y = { fg = mocha.overlay0, bg = mocha.none }, z = none, }, insert = { a = { fg = mocha.base, bg = mocha.flamingo, gui = "bold" }, b = none, c = none, x = none, y = { fg = mocha.overlay0, bg = mocha.none }, z = none, }, visual = { a = { fg = mocha.base, bg = mocha.mauve, gui = "bold" }, b = none, c = none, x = none, y = { fg = mocha.overlay0, bg = mocha.none }, z = none, }, replace = { a = { fg = mocha.base, bg = mocha.red, gui = "bold" }, b = none, c = none, x = none, y = { fg = mocha.overlay0, bg = mocha.none }, z = none, }, command = { a = { fg = mocha.base, bg = mocha.peach, gui = "bold" }, b = none, c = none, x = none, y = { fg = mocha.overlay0, bg = mocha.none }, z = none, }, inactive = { a = { fg = mocha.none, bg = mocha.surface0, gui = "bold" }, b = none, c = none, x = none, y = { fg = mocha.overlay0, bg = mocha.none }, z = none, }, } local branch = { "branch", icon = "", } local diagnostics = { "diagnostics", sources = { "nvim_diagnostic", "nvim_lsp" }, sections = { "error", "warn" }, symbols = { error = " ", warn = " " }, update_in_insert = false, always_visible = true, } local diff = { "diff", symbols = { added = " ", modified = " ", removed = " ", }, } local mode = { "mode", icon = "", } return { "nvim-lualine/lualine.nvim", opts = { options = { theme = theme, section_separators = { left = "▒", right = "▒" }, component_separators = { left = "", right = "" }, }, sections = { lualine_a = { mode }, lualine_b = { branch, diff }, lualine_c = { diagnostics }, lualine_x = {}, lualine_y = { "location" }, lualine_z = { "filetype" }, }, inactive_sections = { lualine_a = {}, lualine_b = {}, lualine_c = {}, lualine_x = {}, lualine_y = {}, lualine_z = {}, }, }, }