| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170 | 
							- local M = {}
 
- local components = require "core.lualine.components"
 
- local styles = {
 
-   lvim = nil,
 
-   default = nil,
 
-   none = nil,
 
- }
 
- styles.none = {
 
-   style = "none",
 
-   options = {
 
-     icons_enabled = true,
 
-     component_separators = "",
 
-     section_separators = "",
 
-     disabled_filetypes = {},
 
-   },
 
-   sections = {
 
-     lualine_a = {},
 
-     lualine_b = {},
 
-     lualine_c = {},
 
-     lualine_x = {},
 
-     lualine_y = {},
 
-     lualine_z = {},
 
-   },
 
-   inactive_sections = {
 
-     lualine_a = {},
 
-     lualine_b = {},
 
-     lualine_c = {},
 
-     lualine_x = {},
 
-     lualine_y = {},
 
-     lualine_z = {},
 
-   },
 
-   tabline = {},
 
-   extensions = {},
 
- }
 
- styles.default = {
 
-   style = "default",
 
-   options = {
 
-     icons_enabled = true,
 
-     component_separators = { "", "" },
 
-     section_separators = { "", "" },
 
-     disabled_filetypes = {},
 
-   },
 
-   sections = {
 
-     lualine_a = { "mode" },
 
-     lualine_b = { "branch" },
 
-     lualine_c = { "filename" },
 
-     lualine_x = { "encoding", "fileformat", "filetype" },
 
-     lualine_y = { "progress" },
 
-     lualine_z = { "location" },
 
-   },
 
-   inactive_sections = {
 
-     lualine_a = {},
 
-     lualine_b = {},
 
-     lualine_c = { "filename" },
 
-     lualine_x = { "location" },
 
-     lualine_y = {},
 
-     lualine_z = {},
 
-   },
 
-   tabline = {},
 
-   extensions = {},
 
- }
 
- styles.lvim = {
 
-   style = "lvim",
 
-   options = {
 
-     icons_enabled = true,
 
-     component_separators = "",
 
-     section_separators = "",
 
-     disabled_filetypes = { "dashboard", "" },
 
-   },
 
-   sections = {
 
-     lualine_a = {
 
-       components.vi_mode,
 
-     },
 
-     lualine_b = {
 
-       components.branch,
 
-     },
 
-     lualine_c = {
 
-       components.diff,
 
-       components.python_env,
 
-     },
 
-     lualine_x = {
 
-       components.diagnostics,
 
-       components.treesitter,
 
-       components.lsp,
 
-       -- components.location,
 
-       -- components.progress,
 
-       -- components.spaces,
 
-       -- components.encoding,
 
-       components.filetype,
 
-     },
 
-     lualine_y = {
 
-       -- components.filetype,
 
-     },
 
-     lualine_z = {
 
-       components.scrollbar,
 
-     },
 
-   },
 
-   inactive_sections = {
 
-     lualine_a = {
 
-       "filename",
 
-     },
 
-     lualine_b = {},
 
-     lualine_c = {},
 
-     lualine_x = {},
 
-     lualine_y = {},
 
-     lualine_z = {},
 
-   },
 
-   tabline = {},
 
-   extensions = { "nvim-tree" },
 
- }
 
- function M.get_style(style)
 
-   local style_keys = vim.tbl_keys(styles)
 
-   if not vim.tbl_contains(style_keys, style) then
 
-     local Log = require "core.log"
 
-     local logger = Log:get_default()
 
-     logger.error(
 
-       "Invalid lualine style",
 
-       string.format('"%s"', style),
 
-       "options are: ",
 
-       string.format('"%s"', table.concat(style_keys, '", "'))
 
-     )
 
-     logger.info '"lvim" style is applied.'
 
-     style = "lvim"
 
-   end
 
-   return vim.deepcopy(styles[style])
 
- end
 
- function M.update()
 
-   local config = lvim.builtin.lualine
 
-   local style = M.get_style(config.style)
 
-   lvim.builtin.lualine = {
 
-     active = true,
 
-     style = style.style,
 
-     options = {
 
-       icons_enabled = config.options.icons_enabled or style.options.icons_enabled,
 
-       component_separators = config.options.component_separators or style.options.component_separators,
 
-       section_separators = config.options.section_separators or style.options.section_separators,
 
-       theme = config.options.theme or lvim.colorscheme or "auto",
 
-       disabled_filetypes = config.options.disabled_filetypes or style.options.disabled_filetypes,
 
-     },
 
-     sections = {
 
-       lualine_a = config.sections.lualine_a or style.sections.lualine_a,
 
-       lualine_b = config.sections.lualine_b or style.sections.lualine_b,
 
-       lualine_c = config.sections.lualine_c or style.sections.lualine_c,
 
-       lualine_x = config.sections.lualine_x or style.sections.lualine_x,
 
-       lualine_y = config.sections.lualine_y or style.sections.lualine_y,
 
-       lualine_z = config.sections.lualine_z or style.sections.lualine_z,
 
-     },
 
-     inactive_sections = {
 
-       lualine_a = config.inactive_sections.lualine_a or style.inactive_sections.lualine_a,
 
-       lualine_b = config.inactive_sections.lualine_b or style.inactive_sections.lualine_b,
 
-       lualine_c = config.inactive_sections.lualine_c or style.inactive_sections.lualine_c,
 
-       lualine_x = config.inactive_sections.lualine_x or style.inactive_sections.lualine_x,
 
-       lualine_y = config.inactive_sections.lualine_y or style.inactive_sections.lualine_y,
 
-       lualine_z = config.inactive_sections.lualine_z or style.inactive_sections.lualine_z,
 
-     },
 
-     tabline = config.tabline or style.tabline,
 
-     extensions = config.extensions or style.extensions,
 
-     on_config_done = config.on_config_done,
 
-   }
 
- end
 
- return M
 
 
  |