summaryrefslogtreecommitdiff
path: root/lua/nv-galaxyline/init.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua/nv-galaxyline/init.lua')
-rw-r--r--lua/nv-galaxyline/init.lua357
1 files changed, 156 insertions, 201 deletions
diff --git a/lua/nv-galaxyline/init.lua b/lua/nv-galaxyline/init.lua
index 246ace9e..5c2396f9 100644
--- a/lua/nv-galaxyline/init.lua
+++ b/lua/nv-galaxyline/init.lua
@@ -1,226 +1,181 @@
--- require'nvim-web-devicons'.setup()
-
local gl = require('galaxyline')
+-- get my theme in galaxyline repo
+-- local colors = require('galaxyline.theme').default
+local colors = {
+ bg = '#282c34',
+ yellow = '#fabd2f',
+ cyan = '#008080',
+ green = '#608B4E',
+ orange = '#FF8800',
+ purple = '#C586C0',
+ magenta = '#d16d9e',
+ grey = '#abb2bf',
+ blue = '#569CD6',
+ red = '#D16969'
+}
+local condition = require('galaxyline.condition')
local gls = gl.section
-gl.short_line_list = {'LuaTree','vista','dbui'}
+gl.short_line_list = {'NvimTree', 'vista', 'dbui', 'packer'}
-local colors = {
- bg = '#282c34',
- yellow = '#fabd2f',
- cyan = '#008080',
- darkblue = '#081633',
- green = '#608B4E',
- orange = '#FF8800',
- purple = '#5d4d7a',
- magenta = '#d16d9e',
- grey = '#c0c0c0',
- blue = '#569CD6',
- red = '#D16969'
+gls.left[1] = {
+ ViMode = {
+ provider = function()
+ -- auto change color according the vim mode
+ local mode_color = {
+ n = colors.blue,
+ i = colors.green,
+ v = colors.purple,
+ [''] = colors.purple,
+ V = colors.purple,
+ c = colors.magenta,
+ no = colors.blue,
+ s = colors.orange,
+ S = colors.orange,
+ [''] = colors.orange,
+ ic = colors.yellow,
+ R = colors.red,
+ Rv = colors.red,
+ cv = colors.blue,
+ ce = colors.blue,
+ r = colors.cyan,
+ rm = colors.cyan,
+ ['r?'] = colors.cyan,
+ ['!'] = colors.blue,
+ t = colors.blue
+ }
+ vim.api.nvim_command('hi GalaxyViMode guifg=' .. mode_color[vim.fn.mode()])
+ return '▊ '
+ end,
+ highlight = {colors.red, colors.bg, 'bold'}
+ }
}
-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}
--- }
--- }
+ GitIcon = {
+ provider = function()
+ return ' '
+ end,
+ condition = condition.check_git_workspace,
+ separator = ' ',
+ separator_highlight = {'NONE', colors.bg},
+ highlight = {colors.orange, colors.bg, 'bold'}
+ }
+}
gls.left[3] = {
- GitIcon = {
- provider = function() return ' ' end,
- condition = buffer_not_empty,
- highlight = {colors.orange,colors.bg},
- }
+ GitBranch = {
+ provider = 'GitBranch',
+ condition = condition.check_git_workspace,
+ separator = '',
+ separator_highlight = {'NONE', colors.bg},
+ highlight = {colors.grey, colors.bg, 'bold'}
+ }
}
+
gls.left[4] = {
- GitBranch = {
- provider = 'GitBranch',
- separator = ' ',
- separator_highlight = {colors.purple,colors.bg},
- condition = buffer_not_empty,
- highlight = {colors.grey,colors.bg},
- }
+ DiffAdd = {
+ provider = 'DiffAdd',
+ condition = condition.hide_in_width,
+ icon = '  ',
+ highlight = {colors.green, 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},
- }
+ DiffModified = {
+ provider = 'DiffModified',
+ condition = condition.hide_in_width,
+ icon = ' 柳',
+ highlight = {colors.orange, 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},
- }
+ DiffRemove = {
+ provider = 'DiffRemove',
+ condition = condition.hide_in_width,
+ icon = '  ',
+ highlight = {colors.red, colors.bg}
+ }
+}
+
+gls.right[1] = {
+ DiagnosticError = {
+ provider = 'DiagnosticError',
+ icon = '  ',
+ highlight = {colors.red, colors.bg}
+ }
}
gls.right[2] = {
- LineInfo = {
- provider = 'LineColumn',
- separator = ' | ',
- separator_highlight = {colors.darkblue,colors.bg},
- highlight = {colors.grey,colors.bg},
- },
+ DiagnosticWarn = {
+ provider = 'DiagnosticWarn',
+ icon = '  ',
+ highlight = {colors.yellow, colors.bg}
+ }
}
+
gls.right[3] = {
- PerCent = {
- provider = 'LinePercent',
- separator = ' |',
- separator_highlight = {colors.darkblue,colors.bg},
- highlight = {colors.grey,colors.bg},
- }
+ DiagnosticHint = {
+ provider = 'DiagnosticHint',
+ icon = '  ',
+ highlight = {colors.blue, colors.bg}
+ }
}
+
gls.right[4] = {
- ScrollBar = {
- provider = 'ScrollBar',
- highlight = {colors.yellow,colors.purple},
- }
+ DiagnosticInfo = {
+ provider = 'DiagnosticInfo',
+ icon = '  ',
+ highlight = {colors.blue, colors.bg}
+ }
+}
+
+gls.right[5] = {
+ ShowLspClient = {
+ provider = 'GetLspClient',
+ condition = function()
+ local tbl = {['dashboard'] = true, [' '] = true}
+ if tbl[vim.bo.filetype] then return false end
+ return true
+ end,
+ icon = ' ',
+ highlight = {colors.grey, colors.bg, 'bold'}
+ }
+}
+
+gls.right[6] = {
+ LineInfo = {
+ provider = 'LineColumn',
+ separator = ' ',
+ separator_highlight = {'NONE', colors.bg},
+ highlight = {colors.grey, colors.bg}
+ }
}
--- gls.short_line_left[1] = {
--- BufferType = {
--- provider = 'FileTypeName',
--- separator = ' ',
--- separator_highlight = {colors.purple,colors.bg},
--- highlight = {colors.grey,colors.purple}
--- }
--- }
+gls.right[7] = {
+ PerCent = {
+ provider = 'LinePercent',
+ separator = ' ',
+ separator_highlight = {'NONE', colors.bg},
+ highlight = {colors.grey, colors.bg, 'bold'}
+ }
+}
gls.short_line_left[1] = {
- LeftEnd = {
- provider = function() return ' ' end,
- separator = ' ',
- separator_highlight = {colors.purple,colors.bg},
- highlight = {colors.purple,colors.bg}
- }
+ BufferType = {
+ provider = 'FileTypeName',
+ separator = ' ',
+ separator_highlight = {'NONE', colors.bg},
+ highlight = {colors.grey, colors.bg, 'bold'}
+ }
+}
+
+gls.short_line_left[2] = {
+ SFileName = {
+ provider = 'SFileName',
+ condition = condition.buffer_not_empty,
+ highlight = {colors.grey, colors.bg, 'bold'}
+ }
+}
+
+gls.short_line_right[1] = {
+ BufferIcon = {provider = 'BufferIcon', highlight = {colors.grey, colors.bg}}
}