diff options
Diffstat (limited to '.config/nvim/lua/plugs-config/lualine.lua')
-rw-r--r-- | .config/nvim/lua/plugs-config/lualine.lua | 349 |
1 files changed, 0 insertions, 349 deletions
diff --git a/.config/nvim/lua/plugs-config/lualine.lua b/.config/nvim/lua/plugs-config/lualine.lua deleted file mode 100644 index f3d2fe7..0000000 --- a/.config/nvim/lua/plugs-config/lualine.lua +++ /dev/null @@ -1,349 +0,0 @@ --- Eviline config for lualine --- Author: shadmansaleh --- Credit: glepnir -local lualine = require('lualine') - --- Color table for highlights --- stylua: ignore -local colors = { - bg = '#202328', - fg = '#bbc2cf', - yellow = '#ECBE7B', - cyan = '#008080', - darkblue = '#081633', - green = '#98be65', - orange = '#FF8800', - violet = '#a9a1e1', - magenta = '#c678dd', - blue = '#51afef', - red = '#ec5f67', -} - -local conditions = { - buffer_not_empty = function() - return vim.fn.empty(vim.fn.expand('%:t')) ~= 1 - end, - hide_in_width = function() - return vim.fn.winwidth(0) > 80 - end, - check_git_workspace = function() - local filepath = vim.fn.expand('%:p:h') - local gitdir = vim.fn.finddir('.git', filepath .. ';') - return gitdir and #gitdir > 0 and #gitdir < #filepath - end, -} - --- Config -local config = { - options = { - -- Disable sections and component separators - component_separators = '', - section_separators = '', - theme = { - -- We are going to use lualine_c an lualine_x as left and - -- right section. Both are highlighted by c theme . So we - -- are just setting default looks o statusline - normal = { c = { fg = colors.fg, bg = colors.bg } }, - inactive = { c = { fg = colors.fg, bg = colors.bg } }, - }, - }, - sections = { - -- these are to remove the defaults - lualine_a = {}, - lualine_b = {}, - lualine_y = {}, - lualine_z = {}, - -- These will be filled later - lualine_c = {}, - lualine_x = {}, - }, - inactive_sections = { - -- these are to remove the defaults - lualine_a = {}, - lualine_b = {}, - lualine_y = {}, - lualine_z = {}, - lualine_c = {}, - lualine_x = {}, - }, -} - --- Inserts a component in lualine_c at left section -local function ins_left(component) - table.insert(config.sections.lualine_c, component) -end - --- Inserts a component in lualine_x at right section -local function ins_right(component) - table.insert(config.sections.lualine_x, component) -end - -ins_left { - function() - return '▊' - end, - -- color = { fg = colors.green }, -- Sets highlighting of component - color = function() - -- auto change color according to neovims mode - local mode_color = { - n = colors.green, - i = colors.blue, - v = colors.magenta, - [''] = colors.magenta, - V = colors.magenta, - c = colors.yellow, - no = colors.red, - s = colors.orange, - S = colors.orange, - [''] = colors.orange, - ic = colors.yellow, - R = colors.red, - Rv = colors.violet, - cv = colors.red, - ce = colors.red, - r = colors.cyan, - rm = colors.cyan, - ['r?'] = colors.cyan, - ['!'] = colors.red, - t = colors.red, - } - return { fg = mode_color[vim.fn.mode()] } - end, - padding = { left = 0, right = 1 }, -- We don't need space before this -} - -ins_left { - -- mode component - function() - return '' - end, - color = function() - -- auto change color according to neovims mode - local mode_color = { - n = colors.green, - i = colors.blue, - v = colors.magenta, - [''] = colors.magenta, - V = colors.magenta, - c = colors.yellow, - no = colors.red, - s = colors.orange, - S = colors.orange, - [''] = colors.orange, - ic = colors.yellow, - R = colors.red, - Rv = colors.violet, - cv = colors.red, - ce = colors.red, - r = colors.cyan, - rm = colors.cyan, - ['r?'] = colors.cyan, - ['!'] = colors.red, - t = colors.red, - } - return { fg = mode_color[vim.fn.mode()] } - end, - padding = { right = 1 }, -} - --- ins_left { --- 'filename', --- cond = conditions.buffer_not_empty, --- color = { fg = colors.magenta, gui = 'bold' }, --- } - -ins_left { - 'buffers', - show_filename_only = false, - hide_filename_extension = false, - show_modified_status = true, - icons_enabled = true, - symbols = { - modified = ' ●', -- Text to show when the buffer is modified - alternate_file = '', -- Text to show to identify the alternate file - directory = '', -- Text to show when the buffer is a directory - }, - buffers_color = { - -- Same values as the general color option can be used here. - active = function() - -- auto change color according to neovims mode - local mode_color = { - n = colors.green, - i = colors.blue, - v = colors.magenta, - [''] = colors.magenta, - V = colors.magenta, - c = colors.yellow, - no = colors.red, - s = colors.orange, - S = colors.orange, - [''] = colors.orange, - ic = colors.yellow, - R = colors.red, - Rv = colors.violet, - cv = colors.red, - ce = colors.red, - r = colors.cyan, - rm = colors.cyan, - ['r?'] = colors.cyan, - ['!'] = colors.red, - t = colors.red, - } - return { fg = mode_color[vim.fn.mode()], gui = 'bold' } - end, - }, -} - -ins_left { - 'diagnostics', - sources = { 'nvim_diagnostic' }, - symbols = { error = ' ', warn = ' ', info = ' ' }, - diagnostics_color = { - color_error = { fg = colors.red }, - color_warn = { fg = colors.yellow }, - color_info = { fg = colors.cyan }, - }, -} - --- Insert mid section. You can make any number of sections in neovim :) --- for lualine it's any number greater then 2 --- ins_left { --- function() --- return '%=' --- end, --- } - -ins_right { - 'filetype', - icons_enabled = true, -- I think icons are cool but Eviline doesn't have them. sigh - color = { fg = colors.blue }, -} - -ins_right { - -- Lsp server name . - function() - local msg = 'no lsp' - local buf_ft = vim.api.nvim_buf_get_option(0, 'filetype') - local clients = vim.lsp.get_active_clients() - if next(clients) == nil then - -- icon = '' - return - end - for _, client in ipairs(clients) do - local filetypes = client.config.filetypes - if filetypes and vim.fn.index(filetypes, buf_ft) ~= -1 then - return client.name - end - end - return msg - end, - icon = ' ', - color = { fg = colors.cyan }, -} - -ins_right { - 'branch', - icon = '', - color = { fg = colors.violet, gui = 'bold' }, -} - -ins_right { - -- filesize component - 'filesize', - cond = conditions.buffer_not_empty, -} - -ins_right { - 'diff', - -- Is it me or the symbol for modified us really weird - symbols = { added = ' ', modified = ' ', removed = ' ' }, - diff_color = { - added = { fg = colors.green }, - modified = { fg = colors.orange }, - removed = { fg = colors.red }, - }, - cond = conditions.hide_in_width, -} - -ins_right { 'location' } - -ins_right { - function() - return '▊' - end, - -- color = { fg = colors.green }, - color = function() - -- auto change color according to neovims mode - local mode_color = { - n = colors.green, - i = colors.blue, - v = colors.magenta, - [''] = colors.magenta, - V = colors.magenta, - c = colors.yellow, - no = colors.red, - s = colors.orange, - S = colors.orange, - [''] = colors.orange, - ic = colors.yellow, - R = colors.red, - Rv = colors.violet, - cv = colors.red, - ce = colors.red, - r = colors.cyan, - rm = colors.cyan, - ['r?'] = colors.cyan, - ['!'] = colors.red, - t = colors.red, - } - return { fg = mode_color[vim.fn.mode()] } - end, - padding = { left = 1 }, -} - --- Now don't forget to initialize lualine -lualine.setup(config) - - - - --- require('lualine').setup { --- options = { --- icons_enabled = true, --- theme = 'gruvbox', --- section_separators = { left = '', right = '' }, --- component_separators = { left = '', right = '' }, --- disabled_filetypes = { --- statusline = {}, --- winbar = {}, --- }, --- ignore_focus = {}, --- always_divide_middle = true, --- globalstatus = false, --- refresh = { --- statusline = 1000, --- tabline = 1000, --- winbar = 1000, --- } --- }, --- sections = { --- lualine_a = { 'mode' }, --- lualine_b = { 'branch', 'diff', 'diagnostics' }, --- lualine_c = { 'filename' }, --- lualine_x = { 'buffers' }, --- lualine_y = { 'filetype' }, --- lualine_z = { 'location' } --- }, --- inactive_sections = { --- lualine_a = {}, --- lualine_b = {}, --- lualine_c = { 'filename' }, --- lualine_x = {}, --- lualine_y = {}, --- lualine_z = {} --- }, --- tabline = {}, --- winbar = {}, --- inactive_winbar = {}, --- extensions = {}, --- } |