From 2884b2736710e5ad069e4bf47569745d5be9c909 Mon Sep 17 00:00:00 2001 From: Radu Potop Date: Tue, 15 Mar 2022 18:06:00 +0200 Subject: [PATCH] Astronaut prompt theme (#8775) * Added initial commit for the Starfish prompt theme * Respect cwd colors * Corrected typo * Renamed theme to Astronaut * Fixed cwd_color for root * Allow longer dir names, fix variable setting --- .../web_config/sample_prompts/astronaut.fish | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 share/tools/web_config/sample_prompts/astronaut.fish diff --git a/share/tools/web_config/sample_prompts/astronaut.fish b/share/tools/web_config/sample_prompts/astronaut.fish new file mode 100644 index 000000000..df21382de --- /dev/null +++ b/share/tools/web_config/sample_prompts/astronaut.fish @@ -0,0 +1,34 @@ +# name: Astronaut +# author: Radu Potop +# description: A prompt theme similar to Starship.rs but without the emojis. + +function fish_prompt --description 'Write out the prompt' + set -l last_status $status + set -l normal (set_color normal) + set -l status_color (set_color brgreen) + set -l cwd_color (set_color $fish_color_cwd) + set -l vcs_color (set_color brpurple) + set -l prompt_status "" + + # Since we display the prompt on a new line allow the directory names to be longer. + set -q fish_prompt_pwd_dir_length + or set -lx fish_prompt_pwd_dir_length 0 + + # Color the prompt differently when we're root + set -l suffix '❯' + if functions -q fish_is_root_user; and fish_is_root_user + if set -q fish_color_cwd_root + set cwd_color (set_color $fish_color_cwd_root) + end + set suffix '#' + end + + # Color the prompt in red on error + if test $last_status -ne 0 + set status_color (set_color $fish_color_error) + set prompt_status $status_color "[" $last_status "]" $normal + end + + echo -s (prompt_login) ' ' $cwd_color (prompt_pwd) $vcs_color (fish_vcs_prompt) $normal ' ' $prompt_status + echo -n -s $status_color $suffix ' ' $normal +end