From 93c23cb809d94bea1c4becca97fd44bc4926e48e Mon Sep 17 00:00:00 2001 From: AxLauri Date: Fri, 12 Aug 2022 23:14:06 -0400 Subject: [PATCH] fix(#1494): git showUntracked value and log * should_show_untracked correctly evaluates status.showUntrackedFiles * git.Runner:_run_git_job removes nils before logging args --- lua/nvim-tree/git/runner.lua | 2 +- lua/nvim-tree/git/utils.lua | 4 ++-- lua/nvim-tree/utils.lua | 6 ++++++ 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/lua/nvim-tree/git/runner.lua b/lua/nvim-tree/git/runner.lua index a62043c5220..c987af372d1 100644 --- a/lua/nvim-tree/git/runner.lua +++ b/lua/nvim-tree/git/runner.lua @@ -84,7 +84,7 @@ function Runner:_run_git_job() local opts = self:_getopts(stdout, stderr) log.line("git", "running job with timeout %dms", self.timeout) - log.line("git", "git %s", table.concat(opts.args, " ")) + log.line("git", "git %s", table.concat(utils.array_remove_nils(opts.args), " ")) handle, pid = uv.spawn( "git", diff --git a/lua/nvim-tree/git/utils.lua b/lua/nvim-tree/git/utils.lua index 1aa48bab249..d76cbe8335b 100644 --- a/lua/nvim-tree/git/utils.lua +++ b/lua/nvim-tree/git/utils.lua @@ -41,7 +41,7 @@ function M.should_show_untracked(cwd) return untracked[cwd] end - local cmd = "git -C " .. cwd .. " config --type=bool status.showUntrackedFiles" + local cmd = "git -C " .. cwd .. " config status.showUntrackedFiles" local ps = log.profile_start("git untracked %s", cwd) log.line("git", cmd) @@ -51,7 +51,7 @@ function M.should_show_untracked(cwd) log.raw("git", has_untracked) log.profile_end(ps, "git untracked %s", cwd) - untracked[cwd] = vim.trim(has_untracked) ~= "false" + untracked[cwd] = vim.trim(has_untracked) ~= "no" return untracked[cwd] end diff --git a/lua/nvim-tree/utils.lua b/lua/nvim-tree/utils.lua index ae56815ba24..02a1a2f58f6 100644 --- a/lua/nvim-tree/utils.lua +++ b/lua/nvim-tree/utils.lua @@ -408,6 +408,12 @@ function M.array_remove(array, item) end end +function M.array_remove_nils(array) + return vim.tbl_filter(function(v) + return v ~= nil + end, array) +end + function M.inject_node(f) return function() f(require("nvim-tree.lib").get_node_at_cursor())