vsc-dotfiles/fish/functions/fish_right_prompt.fish

28 lines
561 B
Fish

function fish_right_prompt
set -l ref (git symbolic-ref HEAD 2>/dev/null)
if test -z $ref
return
end
git diff --no-ext-diff --quiet --exit-code 2>/dev/null
or set -l dirty 'yes'
git diff-index --cached --quiet HEAD -- 2>/dev/null
or set -l staged 'yes'
set_color normal
echo -sn '['
if set -q staged
set_color yellow
else if set -q dirty
set_color red
else
set_color green
end
echo -sn (string replace refs/heads/ '' -- $ref)
set_color normal
echo -sn ']'
end