From efbe32b32383f86ed5889930a58d0e3ab43d71cd Mon Sep 17 00:00:00 2001 From: SolitudeSF Date: Tue, 26 Feb 2019 09:10:07 +0200 Subject: [PATCH] Fix git elvish module --- elvish/lib/git.elv | 46 +++++++++++++++++++++++----------------------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/elvish/lib/git.elv b/elvish/lib/git.elv index b5a749c..995751b 100644 --- a/elvish/lib/git.elv +++ b/elvish/lib/git.elv @@ -6,31 +6,31 @@ ahead = 0 behind = 0 fn refresh-status { - branch = '' - dirty = 0 - staged = 0 - untracked = 0 - ahead = 0 - behind = 0 + branch = '' + dirty = 0 + staged = 0 + untracked = 0 + ahead = 0 + behind = 0 - _ = ?( - data = [(git --no-optional-locks status --ignore-submodules --porcelain=v2 -b 2>/dev/null)] - branch = [(splits ' ' $data[1])][2] + _ = ?( + @data = (git --no-optional-locks status --ignore-submodules --porcelain=v2 -b 2>/dev/null) + branch = [(splits ' ' $data[1])][2] - if (has-prefix $data[3] '# branch.ab') { - ahead behind = (explode [(splits ' ' $data[3])][2:])[1:] - } + if (and (> (count $data) 3) (has-prefix $data[3] '# branch.ab')) { + ahead behind = (explode [(splits ' ' $data[3])][2:])[1:] + } - for i $data { - if (or (has-prefix $i 1) (has-prefix $i 2)) { - if (eq $i[2] .) { - dirty = (+ $dirty 1) - } else { - staged = (+ $staged 1) - } - } elif (has-prefix $i '?') { - untracked = (+ $untracked 1) - } + for i $data { + if (or (has-prefix $i 1) (has-prefix $i 2)) { + if (eq $i[2] '.') { + dirty = (+ $dirty 1) + } else { + staged = (+ $staged 1) } - ) + } elif (has-prefix $i '?') { + untracked = (+ $untracked 1) + } + } + ) }