diff options
author | chaeing <[email protected]> | 2021-08-26 00:20:04 -0700 |
---|---|---|
committer | GitHub <[email protected]> | 2021-08-26 11:50:04 +0430 |
commit | 291c8bb5bd894b4da7c9e684915348a094a13aae (patch) | |
tree | 97dc66b413798a89dc3f6136f8d013e4d89b2c44 | |
parent | a83fffdc80bbd50b9a797adcab8ce29f0fdfacc2 (diff) |
[Refactor] Lualine component conditions (#1394)
-rw-r--r-- | lua/core/lualine/components.lua | 42 | ||||
-rw-r--r-- | lua/core/lualine/conditions.lua | 10 |
2 files changed, 28 insertions, 24 deletions
diff --git a/lua/core/lualine/components.lua b/lua/core/lualine/components.lua index 042f6b6d..894d9e9b 100644 --- a/lua/core/lualine/components.lua +++ b/lua/core/lualine/components.lua @@ -1,6 +1,17 @@ local conditions = require "core.lualine.conditions" local colors = require "core.lualine.colors" +local function diff_source() + local gitsigns = vim.b.gitsigns_status_dict + if gitsigns then + return { + added = gitsigns.added, + modified = gitsigns.changed, + removed = gitsigns.removed, + } + end +end + return { mode = { function() @@ -8,34 +19,29 @@ return { end, left_padding = 0, right_padding = 0, - condition = function() - return true - end, color = {}, + condition = nil, }, branch = { - "branch", + "b:gitsigns_head", icon = " ", - condition = function() - return conditions.hide_in_width() and conditions.check_git_workspace() - end, color = { gui = "bold" }, + condition = conditions.hide_in_width, }, filename = { "filename", - condition = function() - return true - end, color = {}, + condition = nil, }, diff = { "diff", + source = diff_source, symbols = { added = " ", modified = "柳", removed = " " }, color_added = { fg = colors.green }, color_modified = { fg = colors.yellow }, color_removed = { fg = colors.red }, - condition = conditions.hide_in_width, color = {}, + condition = nil, }, python_env = { function() @@ -53,15 +59,15 @@ return { end return "" end, - condition = conditions.hide_in_width, color = { fg = colors.green }, + condition = conditions.hide_in_width, }, diagnostics = { "diagnostics", sources = { "nvim_lsp" }, symbols = { error = " ", warn = " ", info = " ", hint = " " }, - condition = conditions.hide_in_width, color = {}, + condition = conditions.hide_in_width, }, treesitter = { function() @@ -70,8 +76,8 @@ return { end return "" end, - condition = conditions.hide_in_width, color = { fg = colors.green }, + condition = conditions.hide_in_width, }, lsp = { function(msg) @@ -106,8 +112,8 @@ return { return table.concat(buf_client_names, ", ") end, icon = " ", - condition = conditions.hide_in_width, color = { gui = "bold" }, + condition = conditions.hide_in_width, }, location = { "location", condition = conditions.hide_in_width, color = {} }, progress = { "progress", condition = conditions.hide_in_width, color = {} }, @@ -125,8 +131,8 @@ return { encoding = { "o:encoding", upper = true, - condition = conditions.hide_in_width, color = {}, + condition = conditions.hide_in_width, }, filetype = { "filetype", condition = conditions.hide_in_width, color = {} }, scrollbar = { @@ -140,9 +146,7 @@ return { end, left_padding = 0, right_padding = 0, - condition = function() - return true - end, color = { fg = colors.yellow, bg = colors.bg }, + condition = nil, }, } diff --git a/lua/core/lualine/conditions.lua b/lua/core/lualine/conditions.lua index 2d2d81ef..3ee4fbb8 100644 --- a/lua/core/lualine/conditions.lua +++ b/lua/core/lualine/conditions.lua @@ -7,11 +7,11 @@ local conditions = { hide_in_width = function() return vim.fn.winwidth(0) > window_width_limit 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, + -- 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, } return conditions |