From 10fc0ebf904a135724d74dda6f3b8402fabb56c5 Mon Sep 17 00:00:00 2001 From: chomosuke Date: Tue, 6 Dec 2022 23:56:12 +1100 Subject: [PATCH] sort icon only if not git signcolumn --- lua/nvim-tree/renderer/builder.lua | 15 +++++++++++---- lua/nvim-tree/renderer/components/git.lua | 4 ---- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/lua/nvim-tree/renderer/builder.lua b/lua/nvim-tree/renderer/builder.lua index 1a63900e..52657bab 100644 --- a/lua/nvim-tree/renderer/builder.lua +++ b/lua/nvim-tree/renderer/builder.lua @@ -248,10 +248,17 @@ function Builder:_build_line(node, idx, num_children) local git_highlight = git.get_highlight(node) local git_icons_tbl = git.get_icons(node) - if self.is_git_sign and git_icons_tbl and #git_icons_tbl > 0 then - local git_info = git_icons_tbl[1] - table.insert(self.signs, { sign = git_info.hl, lnum = self.index + 1 }) - git_icons_tbl = {} + if git_icons_tbl and #git_icons_tbl > 0 then + if self.is_git_sign then + local git_info = git_icons_tbl[1] + table.insert(self.signs, { sign = git_info.hl, lnum = self.index + 1 }) + git_icons_tbl = {} + else + -- sort icons so it looks slightly better + table.sort(git_icons_tbl, function(a, b) + return a.ord < b.ord + end) + end end local is_folder = node.nodes ~= nil diff --git a/lua/nvim-tree/renderer/components/git.lua b/lua/nvim-tree/renderer/components/git.lua index 65e49e77..95115f3f 100644 --- a/lua/nvim-tree/renderer/components/git.lua +++ b/lua/nvim-tree/renderer/components/git.lua @@ -85,10 +85,6 @@ local function get_icons_(node) end end - table.sort(iconss, function(a, b) - return a.ord < b.ord - end) - return iconss end