mirror of
https://github.com/LunarVim/LunarVim.git
synced 2024-09-21 11:05:08 +02:00
226 lines
5.4 KiB
Lua
226 lines
5.4 KiB
Lua
-- require'nvim-web-devicons'.setup()
|
||
|
||
local gl = require('galaxyline')
|
||
local gls = gl.section
|
||
gl.short_line_list = {'LuaTree','vista','dbui'}
|
||
|
||
local colors = {
|
||
bg = '#282c34',
|
||
yellow = '#fabd2f',
|
||
cyan = '#008080',
|
||
darkblue = '#081633',
|
||
green = '#608B4E',
|
||
orange = '#FF8800',
|
||
purple = '#5d4d7a',
|
||
magenta = '#d16d9e',
|
||
grey = '#c0c0c0',
|
||
blue = '#569CD6',
|
||
red = '#D16969'
|
||
}
|
||
|
||
local buffer_not_empty = function()
|
||
if vim.fn.empty(vim.fn.expand('%:t')) ~= 1 then
|
||
return true
|
||
end
|
||
return false
|
||
end
|
||
|
||
gls.left[2] = {
|
||
ViMode = {
|
||
provider = function()
|
||
-- auto change color according the vim mode
|
||
local mode_color = {n = colors.purple,
|
||
i = colors.green,
|
||
v = colors.blue,
|
||
[''] = colors.blue,
|
||
V = colors.blue,
|
||
c = colors.purple,
|
||
no = colors.magenta,
|
||
s = colors.orange,
|
||
S = colors.orange,
|
||
[''] = colors.orange,
|
||
ic = colors.yellow,
|
||
R = colors.red,
|
||
Rv = colors.red,
|
||
cv = colors.red,
|
||
ce=colors.red,
|
||
r = colors.cyan,
|
||
rm = colors.cyan,
|
||
['r?'] = colors.cyan,
|
||
['!'] = colors.red,
|
||
t = colors.red}
|
||
vim.api.nvim_command('hi GalaxyViMode guibg='..mode_color[vim.fn.mode()])
|
||
return ' NVCode '
|
||
end,
|
||
separator = ' ',
|
||
separator_highlight = {colors.yellow,function()
|
||
if not buffer_not_empty() then
|
||
return colors.bg
|
||
end
|
||
return colors.bg
|
||
end},
|
||
highlight = {colors.grey,colors.bg,'bold'},
|
||
},
|
||
}
|
||
-- gls.left[3] ={
|
||
-- FileIcon = {
|
||
-- separator = ' ',
|
||
-- provider = 'FileIcon',
|
||
-- condition = buffer_not_empty,
|
||
-- highlight = {require('galaxyline.provider_fileinfo').get_file_icon_color,colors.bg},
|
||
-- },
|
||
-- }
|
||
-- gls.left[4] = {
|
||
-- FileName = {
|
||
-- provider = {'FileSize'},
|
||
-- condition = buffer_not_empty,
|
||
-- separator = ' ',
|
||
-- separator_highlight = {colors.purple,colors.bg},
|
||
-- highlight = {colors.magenta,colors.bg}
|
||
-- }
|
||
-- }
|
||
|
||
gls.left[3] = {
|
||
GitIcon = {
|
||
provider = function() return ' ' end,
|
||
condition = buffer_not_empty,
|
||
highlight = {colors.orange,colors.bg},
|
||
}
|
||
}
|
||
gls.left[4] = {
|
||
GitBranch = {
|
||
provider = 'GitBranch',
|
||
separator = ' ',
|
||
separator_highlight = {colors.purple,colors.bg},
|
||
condition = buffer_not_empty,
|
||
highlight = {colors.grey,colors.bg},
|
||
}
|
||
}
|
||
|
||
local checkwidth = function()
|
||
local squeeze_width = vim.fn.winwidth(0) / 2
|
||
if squeeze_width > 40 then
|
||
return true
|
||
end
|
||
return false
|
||
end
|
||
|
||
gls.left[5] = {
|
||
DiffAdd = {
|
||
provider = 'DiffAdd',
|
||
condition = checkwidth,
|
||
-- separator = ' ',
|
||
-- separator_highlight = {colors.purple,colors.bg},
|
||
icon = ' ',
|
||
highlight = {colors.green,colors.bg},
|
||
}
|
||
}
|
||
gls.left[6] = {
|
||
DiffModified = {
|
||
provider = 'DiffModified',
|
||
condition = checkwidth,
|
||
-- separator = ' ',
|
||
-- separator_highlight = {colors.purple,colors.bg},
|
||
icon = ' ',
|
||
highlight = {colors.blue,colors.bg},
|
||
}
|
||
}
|
||
gls.left[7] = {
|
||
DiffRemove = {
|
||
provider = 'DiffRemove',
|
||
condition = checkwidth,
|
||
-- separator = ' ',
|
||
-- separator_highlight = {colors.purple,colors.bg},
|
||
icon = ' ',
|
||
highlight = {colors.red,colors.bg},
|
||
}
|
||
}
|
||
gls.left[8] = {
|
||
LeftEnd = {
|
||
provider = function() return ' ' end,
|
||
separator = ' ',
|
||
separator_highlight = {colors.purple,colors.bg},
|
||
highlight = {colors.purple,colors.bg}
|
||
}
|
||
}
|
||
gls.left[9] = {
|
||
DiagnosticError = {
|
||
provider = 'DiagnosticError',
|
||
icon = ' ',
|
||
highlight = {colors.red,colors.bg}
|
||
}
|
||
}
|
||
gls.left[10] = {
|
||
Space = {
|
||
provider = function () return '' end
|
||
}
|
||
}
|
||
gls.left[11] = {
|
||
DiagnosticWarn = {
|
||
provider = 'DiagnosticWarn',
|
||
icon = ' ',
|
||
highlight = {colors.yellow,colors.bg},
|
||
}
|
||
}
|
||
gls.left[12] = {
|
||
DiagnosticHint = {
|
||
provider = 'DiagnosticHint',
|
||
icon = ' ',
|
||
highlight = {colors.blue,colors.bg},
|
||
}
|
||
}
|
||
gls.left[13] = {
|
||
DiagnosticInfo = {
|
||
provider = 'DiagnosticInfo',
|
||
icon = ' ',
|
||
highlight = {colors.orange,colors.bg},
|
||
}
|
||
}
|
||
gls.right[1]= {
|
||
FileFormat = {
|
||
provider = 'FileFormat',
|
||
separator = ' ',
|
||
separator_highlight = {colors.bg,colors.bg},
|
||
highlight = {colors.grey,colors.bg},
|
||
}
|
||
}
|
||
gls.right[2] = {
|
||
LineInfo = {
|
||
provider = 'LineColumn',
|
||
separator = ' | ',
|
||
separator_highlight = {colors.darkblue,colors.bg},
|
||
highlight = {colors.grey,colors.bg},
|
||
},
|
||
}
|
||
gls.right[3] = {
|
||
PerCent = {
|
||
provider = 'LinePercent',
|
||
separator = ' |',
|
||
separator_highlight = {colors.darkblue,colors.bg},
|
||
highlight = {colors.grey,colors.bg},
|
||
}
|
||
}
|
||
gls.right[4] = {
|
||
ScrollBar = {
|
||
provider = 'ScrollBar',
|
||
highlight = {colors.yellow,colors.purple},
|
||
}
|
||
}
|
||
|
||
-- gls.short_line_left[1] = {
|
||
-- BufferType = {
|
||
-- provider = 'FileTypeName',
|
||
-- separator = ' ',
|
||
-- separator_highlight = {colors.purple,colors.bg},
|
||
-- highlight = {colors.grey,colors.purple}
|
||
-- }
|
||
-- }
|
||
|
||
gls.short_line_left[1] = {
|
||
LeftEnd = {
|
||
provider = function() return ' ' end,
|
||
separator = ' ',
|
||
separator_highlight = {colors.purple,colors.bg},
|
||
highlight = {colors.purple,colors.bg}
|
||
}
|
||
}
|