diff options
author | christianchiarulli <[email protected]> | 2021-07-05 16:26:31 -0400 |
---|---|---|
committer | christianchiarulli <[email protected]> | 2021-07-05 16:26:31 -0400 |
commit | 20485971641a9d916640ccad05586a641c984ed6 (patch) | |
tree | d397a3a9adba502b4c26b802d897b8310972f76f /lua/lv-galaxyline/init.lua | |
parent | 56e82dac4497293541099185441485dd31e98dc8 (diff) | |
parent | a469c710bfc01f291df68dba40464caaa2b496da (diff) |
Merge branch 'master' of github.com:ChristianChiarulli/LunarVim into stable
Diffstat (limited to 'lua/lv-galaxyline/init.lua')
-rw-r--r-- | lua/lv-galaxyline/init.lua | 406 |
1 files changed, 221 insertions, 185 deletions
diff --git a/lua/lv-galaxyline/init.lua b/lua/lv-galaxyline/init.lua index 51b9072c..efb6a988 100644 --- a/lua/lv-galaxyline/init.lua +++ b/lua/lv-galaxyline/init.lua @@ -1,25 +1,29 @@ -local gl = require('galaxyline') +-- if not package.loaded['galaxyline'] then +-- return +-- end + +local gl = require "galaxyline" -- get my theme in galaxyline repo -- local colors = require('galaxyline.theme').default local colors = { - bg = '#2E2E2E', - -- bg = '#292D38', - yellow = '#DCDCAA', - dark_yellow = '#D7BA7D', - cyan = '#4EC9B0', - green = '#608B4E', - light_green = '#B5CEA8', - string_orange = '#CE9178', - orange = '#FF8800', - purple = '#C586C0', - magenta = '#D16D9E', - grey = '#858585', - blue = '#569CD6', - vivid_blue = '#4FC1FF', - light_blue = '#9CDCFE', - red = '#D16969', - error_red = '#F44747', - info_yellow = '#FFCC66' + bg = "#2E2E2E", + -- bg = '#292D38', + yellow = "#DCDCAA", + dark_yellow = "#D7BA7D", + cyan = "#4EC9B0", + green = "#608B4E", + light_green = "#B5CEA8", + string_orange = "#CE9178", + orange = "#FF8800", + purple = "#C586C0", + magenta = "#D16D9E", + grey = "#858585", + blue = "#569CD6", + vivid_blue = "#4FC1FF", + light_blue = "#9CDCFE", + red = "#D16969", + error_red = "#F44747", + info_yellow = "#FFCC66", } -- galaxyline themes for Gruvbox and NVCode. @@ -67,231 +71,263 @@ local colors = { -- info_yellow = '#FFCC66' -- } -local condition = require('galaxyline.condition') +local condition = require "galaxyline.condition" local gls = gl.section -gl.short_line_list = {'NvimTree', 'vista', 'dbui', 'packer'} +gl.short_line_list = { "NvimTree", "vista", "dbui", "packer" } table.insert(gls.left, { - 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} - } + 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 = 'StatusLineNC' + -- highlight = {colors.red, colors.bg} + }, }) -- print(vim.fn.getbufvar(0, 'ts')) -vim.fn.getbufvar(0, 'ts') +vim.fn.getbufvar(0, "ts") table.insert(gls.left, { - GitIcon = { - provider = function() - return ' ' - end, - condition = condition.check_git_workspace, - separator = ' ', - separator_highlight = {'NONE', colors.bg}, - highlight = {colors.orange, colors.bg} - } + GitIcon = { + provider = function() + return " " + end, + condition = condition.check_git_workspace, + separator = " ", + separator_highlight = "StatusLineSeparator", + highlight = "StatusLineGit", + }, }) table.insert(gls.left, { - GitBranch = { - provider = 'GitBranch', - condition = condition.check_git_workspace, - separator = ' ', - separator_highlight = {'NONE', colors.bg}, - highlight = {colors.grey, colors.bg} - } + GitBranch = { + provider = "GitBranch", + condition = condition.check_git_workspace, + separator = " ", + separator_highlight = "StatusLineSeparator", + highlight = "StatusLineNC", + }, }) table.insert(gls.left, { - DiffAdd = { - provider = 'DiffAdd', - condition = condition.hide_in_width, - icon = '  ', - highlight = {colors.green, colors.bg} - } + DiffAdd = { + provider = "DiffAdd", + condition = condition.hide_in_width, + icon = "  ", + highlight = "StatusLineGitAdd", + }, }) table.insert(gls.left, { - DiffModified = { - provider = 'DiffModified', - condition = condition.hide_in_width, - icon = ' 柳', - highlight = {colors.blue, colors.bg} - } + DiffModified = { + provider = "DiffModified", + condition = condition.hide_in_width, + icon = " 柳", + highlight = "StatusLineGitChange", + }, }) table.insert(gls.left, { - DiffRemove = { - provider = 'DiffRemove', - condition = condition.hide_in_width, - icon = ' ï…† ', - highlight = {colors.red, colors.bg} - } + DiffRemove = { + provider = "DiffRemove", + condition = condition.hide_in_width, + icon = " ï…† ", + highlight = "StatusLineGitDelete", + }, }) table.insert(gls.right, { - DiagnosticError = {provider = 'DiagnosticError', icon = ' ï™™ ', highlight = {colors.error_red, colors.bg}} + DiagnosticError = { + provider = "DiagnosticError", + icon = " ï™™ ", + highlight = "StatusLineLspDiagnosticsError", + }, +}) +table.insert(gls.right, { + DiagnosticWarn = { + provider = "DiagnosticWarn", + icon = "  ", + + highlight = "StatusLineLspDiagnosticsWarning", + }, }) -table.insert(gls.right, {DiagnosticWarn = {provider = 'DiagnosticWarn', icon = '  ', highlight = {colors.orange, colors.bg}}}) table.insert(gls.right, { - DiagnosticHint = {provider = 'DiagnosticHint', icon = ' ï µ ', highlight = {colors.vivid_blue, colors.bg}} + DiagnosticInfo = { + provider = "DiagnosticInfo", + icon = "  ", + + highlight = "StatusLineLspDiagnosticsInformation", + }, }) -table.insert(gls.right, {DiagnosticInfo = {provider = 'DiagnosticInfo', icon = '  ', highlight = {colors.info_yellow, colors.bg}}}) +table.insert(gls.right, { + DiagnosticHint = { + provider = "DiagnosticHint", + icon = " ï µ ", + + highlight = "StatusLineLspDiagnosticsHint", + }, +}) table.insert(gls.right, { - TreesitterIcon = { - provider = function() - if next(vim.treesitter.highlighter.active) ~= nil then return ' ' end - return '' - end, - separator = ' ', - separator_highlight = {'NONE', colors.bg}, - highlight = {colors.green, colors.bg} - } + TreesitterIcon = { + provider = function() + if next(vim.treesitter.highlighter.active) ~= nil then + return " " + end + return "" + end, + separator = " ", + separator_highlight = "StatusLineSeparator", + highlight = "StatusLineTreeSitter", + }, }) -local get_lsp_client = function (msg) - msg = msg or "No Active LSP Client" - local buf_ft = vim.api.nvim_buf_get_option(0, 'filetype') - local clients = vim.lsp.get_active_clients() - if next(clients) == nil then - return msg - end - local lsps = "" - for _,client in ipairs(clients) do - local filetypes = client.config.filetypes - if filetypes and vim.fn.index(filetypes, buf_ft) ~=1 then - -- print(client.name) - if lsps == "" then - -- print("first", lsps) - lsps = client.name - else - lsps = lsps .. ", " .. client.name - -- print("more", lsps) - end - end - end - if lsps == "" then - return msg - else - return lsps +local get_lsp_client = function(msg) + msg = msg or "No Active LSP Client" + local buf_ft = vim.api.nvim_buf_get_option(0, "filetype") + local clients = vim.lsp.get_active_clients() + if next(clients) == nil then + return msg + end + local lsps = "" + for _, client in ipairs(clients) do + local filetypes = client.config.filetypes + if filetypes and vim.fn.index(filetypes, buf_ft) ~= 1 then + -- print(client.name) + if lsps == "" then + -- print("first", lsps) + lsps = client.name + else + lsps = lsps .. ", " .. client.name + -- print("more", lsps) + end end + end + if lsps == "" then + return msg + else + return lsps + end end - table.insert(gls.right, { - ShowLspClient = { - provider = get_lsp_client, - 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} - } + ShowLspClient = { + provider = get_lsp_client, + condition = function() + local tbl = { ["dashboard"] = true, [" "] = true } + if tbl[vim.bo.filetype] then + return false + end + return true + end, + icon = "ï‚… ", + highlight = "StatusLineNC", + }, }) table.insert(gls.right, { - LineInfo = { - provider = 'LineColumn', - separator = ' ', - separator_highlight = {'NONE', colors.bg}, - highlight = {colors.grey, colors.bg} - } + LineInfo = { + provider = "LineColumn", + separator = " ", + separator_highlight = "StatusLineSeparator", + highlight = "StatusLineNC", + }, }) table.insert(gls.right, { - PerCent = { - provider = 'LinePercent', - separator = ' ', - separator_highlight = {'NONE', colors.bg}, - highlight = {colors.grey, colors.bg} - } + PerCent = { + provider = "LinePercent", + separator = " ", + separator_highlight = "StatusLineSeparator", + highlight = "StatusLineNC", + }, }) table.insert(gls.right, { - Tabstop = { - provider = function() - return "Spaces: " .. vim.api.nvim_buf_get_option(0, "shiftwidth") .. " " - end, - condition = condition.hide_in_width, - separator = ' ', - separator_highlight = {'NONE', colors.bg}, - highlight = {colors.grey, colors.bg} - } + Tabstop = { + provider = function() + return "Spaces: " .. vim.api.nvim_buf_get_option(0, "shiftwidth") .. " " + end, + condition = condition.hide_in_width, + separator = " ", + separator_highlight = "StatusLineSeparator", + highlight = "StatusLineNC", + }, }) table.insert(gls.right, { - BufferType = { - provider = 'FileTypeName', - condition = condition.hide_in_width, - separator = ' ', - separator_highlight = {'NONE', colors.bg}, - highlight = {colors.grey, colors.bg} - } + BufferType = { + provider = "FileTypeName", + condition = condition.hide_in_width, + separator = " ", + separator_highlight = "StatusLineSeparator", + highlight = "StatusLineNC", + }, }) table.insert(gls.right, { - FileEncode = { - provider = 'FileEncode', - condition = condition.hide_in_width, - separator = ' ', - separator_highlight = {'NONE', colors.bg}, - highlight = {colors.grey, colors.bg} - } + FileEncode = { + provider = "FileEncode", + condition = condition.hide_in_width, + separator = " ", + separator_highlight = "StatusLineSeparator", + highlight = "StatusLineNC", + }, }) table.insert(gls.right, { - Space = { - provider = function() - return ' ' - end, - separator = ' ', - separator_highlight = {'NONE', colors.bg}, - highlight = {colors.orange, colors.bg} - } + Space = { + provider = function() + return " " + end, + separator = " ", + separator_highlight = "StatusLineSeparator", + highlight = "StatusLineNC", + }, }) table.insert(gls.short_line_left, { - BufferType = { - provider = 'FileTypeName', - separator = ' ', - separator_highlight = {'NONE', colors.bg}, - highlight = {colors.grey, colors.bg} - } + BufferType = { + provider = "FileTypeName", + separator = " ", + separator_highlight = "StatusLineSeparator", + highlight = "StatusLineNC", + }, }) table.insert(gls.short_line_left, { - SFileName = {provider = 'SFileName', condition = condition.buffer_not_empty, highlight = {colors.grey, colors.bg}} + SFileName = { + provider = "SFileName", + condition = condition.buffer_not_empty, + + highlight = "StatusLineNC", + }, }) --table.insert(gls.short_line_right[1] = {BufferIcon = {provider = 'BufferIcon', highlight = {colors.grey, colors.bg}}}) |