diff --git a/themes/bobthefish/fish_prompt.fish b/themes/bobthefish/fish_prompt.fish index b6a5413..1aeebf9 100644 --- a/themes/bobthefish/fish_prompt.fish +++ b/themes/bobthefish/fish_prompt.fish @@ -32,6 +32,11 @@ set __bobthefish_nonzero_exit_glyph '! ' set __bobthefish_superuser_glyph '$ ' set __bobthefish_bg_job_glyph '% ' +# Python glyphs +set __bobthefish_superscript_glyph \u00B9 \u00B2 \u00B3 +set __bobthefish_virtualenv_glyph \u25F0 +set __bobthefish_pypy_glyph \u1D56 + # Colors set __bobthefish_lt_green addc10 set __bobthefish_med_green 189303 @@ -50,6 +55,14 @@ set __bobthefish_dk_grey 333 set __bobthefish_med_grey 999 set __bobthefish_lt_grey ccc +set __bobthefish_dk_brown 4d2600 +set __bobthefish_med_brown 803F00 +set __bobthefish_lt_brown BF5E00 + +set __bobthefish_dk_blue 1E2933 +set __bobthefish_med_blue 275379 +set __bobthefish_lt_blue 326D9E + # =========================== # Helper methods # =========================== @@ -249,6 +262,34 @@ function __bobthefish_prompt_dir -d 'Display a shortened form of the current dir __bobthefish_path_segment "$PWD" end +function __bobthefish_in_virtualfish_virtualenv + set -q VIRTUAL_ENV +end + +function __bobthefish_virtualenv_python_version -d 'Get current python version' + switch (readlink (which python)) + case python2 + echo $__bobthefish_superscript_glyph[2] + case python3 + echo $__bobthefish_superscript_glyph[3] + case pypy + echo $__bobthefish_pypy_glyph + end +end + +function __bobthefish_virtualenv -d 'Get the current virtualenv' + echo $__bobthefish_virtualenv_glyph(__bobthefish_virtualenv_python_version) (basename "$VIRTUAL_ENV") +end + +function __bobthefish_prompt_virtualfish -d "Display activated virtual environment (only for virtualfish, virtualenv's activate.fish changes prompt by itself)" + set flag_bg $__bobthefish_lt_blue + set flag_fg $__bobthefish_dk_blue + __bobthefish_start_segment $flag_bg $flag_fg + set_color $flag_fg --bold + echo -n -s (__bobthefish_virtualenv) $flags ' ' + set_color normal +end + # =========================== # Apply theme @@ -258,6 +299,9 @@ function fish_prompt -d 'bobthefish, a fish theme optimized for awesome' set -g RETVAL $status __bobthefish_prompt_status __bobthefish_prompt_user + if __bobthefish_in_virtualfish_virtualenv + __bobthefish_prompt_virtualfish + end if __bobthefish_in_git __bobthefish_prompt_git else