diff options
Diffstat (limited to 'lua/nvcodeline.lua')
-rw-r--r-- | lua/nvcodeline.lua | 221 |
1 files changed, 221 insertions, 0 deletions
diff --git a/lua/nvcodeline.lua b/lua/nvcodeline.lua new file mode 100644 index 00000000..488d2007 --- /dev/null +++ b/lua/nvcodeline.lua @@ -0,0 +1,221 @@ +-- 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 = '#afd700', + orange = '#FF8800', + purple = '#5d4d7a', + magenta = '#d16d9e', + grey = '#c0c0c0', + blue = '#0087d7', + red = '#ec5f67' +} + +local buffer_not_empty = function() + if vim.fn.empty(vim.fn.expand('%:t')) ~= 1 then + return true + end + return false +end + +gls.left[1] = { + FirstElement = { + -- provider = function() return '▋' end, + provider = function() return ' ' end, + highlight = {colors.bg,colors.purple} + }, +} +gls.left[2] = { + ViMode = { + provider = function() + local alias = {n = 'NORMAL',i = 'INSERT',c= 'COMMAND',V= 'VISUAL', [''] = 'VISUAL'} + return alias[vim.fn.mode()] + end, + separator = ' ', + separator_highlight = {colors.yellow,function() + if not buffer_not_empty() then + return colors.purple + end + return colors.purple + end}, + highlight = {colors.grey,colors.purple,'bold'}, + }, +} +-- gls.left[2] = { +-- ViMode = { +-- provider = function() +-- -- auto change color according the vim mode +-- local mode_color = {n = colors.magenta, i = colors.green,v=colors.blue,[''] = colors.blue,V=colors.blue, +-- c = colors.red,no = colors.magenta,s = colors.orange,S=colors.orange, +-- [''] = colors.orange,ic = colors.yellow,R = colors.purple,Rv = colors.purple, +-- 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 guifg='..mode_color[vim.fn.mode()]) +-- return ' ' +-- end, +-- highlight = {colors.red,colors.line_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', + 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, + icon = ' ', + highlight = {colors.green,colors.bg}, + } +} +gls.left[6] = { + DiffModified = { + provider = 'DiffModified', + condition = checkwidth, + icon = ' ', + highlight = {colors.blue,colors.bg}, + } +} +gls.left[7] = { + DiffRemove = { + provider = 'DiffRemove', + condition = checkwidth, + 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.right[1]= { + FileFormat = { + provider = 'FileFormat', + separator = ' ', + separator_highlight = {colors.bg,colors.purple}, + highlight = {colors.grey,colors.purple}, + } +} +gls.right[2] = { + LineInfo = { + provider = 'LineColumn', + separator = ' | ', + separator_highlight = {colors.darkblue,colors.purple}, + highlight = {colors.grey,colors.purple}, + }, +} +gls.right[3] = { + PerCent = { + provider = 'LinePercent', + separator = ' ', + separator_highlight = {colors.darkblue,colors.purple}, + highlight = {colors.grey,colors.darkblue}, + } +} +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} + } +} + +-- gls.short_line_right[1] = { +-- BufferIcon = { +-- provider= 'BufferIcon', +-- separator = ' ', +-- separator_highlight = {colors.purple,colors.bg}, +-- highlight = {colors.grey,colors.purple} +-- } +-- } |