27 lines
565 B
Fish
27 lines
565 B
Fish
function fish_right_prompt
|
|
set -l ref (git symbolic-ref HEAD ^/dev/null)
|
|
if test -z $ref
|
|
return
|
|
end
|
|
|
|
git diff --no-ext-diff --quiet --exit-code ^/dev/null
|
|
or set -l dirty 'yes'
|
|
|
|
git diff-index --cached --quiet HEAD -- ^/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 |