summaryrefslogtreecommitdiff
path: root/fish/fish_prompt.fish
diff options
context:
space:
mode:
authortslilc <tslil@posteo.de>2024-12-27 09:28:35 +0000
committertslilc <tslil@posteo.de>2024-12-27 09:29:01 +0000
commitc9a47bfe397e477c65c1f526d95bca6ff70cca1f (patch)
tree44845b306264ad3bb96b3d53979f5379dd35a8ea /fish/fish_prompt.fish
parentc69a7861e34f9483830b42b399c30d6136aa3fcc (diff)
[fish] update prompt
Diffstat (limited to 'fish/fish_prompt.fish')
-rw-r--r--fish/fish_prompt.fish61
1 files changed, 61 insertions, 0 deletions
diff --git a/fish/fish_prompt.fish b/fish/fish_prompt.fish
new file mode 100644
index 0000000..0396e6f
--- /dev/null
+++ b/fish/fish_prompt.fish
@@ -0,0 +1,61 @@
+function fish_prompt --description 'Write out the prompt'
+ set -l last_pipestatus $pipestatus
+ set -lx __fish_last_status $status # Export for __fish_print_pipestatus.
+
+ if not set -q __fish_git_prompt_show_informative_status
+ set -g __fish_git_prompt_show_informative_status 1
+ end
+ if not set -q __fish_git_prompt_hide_untrackedfiles
+ set -g __fish_git_prompt_hide_untrackedfiles 1
+ end
+ if not set -q __fish_git_prompt_color_branch
+ set -g __fish_git_prompt_color_branch magenta --bold
+ end
+ if not set -q __fish_git_prompt_showupstream
+ set -g __fish_git_prompt_showupstream informative
+ end
+ if not set -q __fish_git_prompt_color_dirtystate
+ set -g __fish_git_prompt_color_dirtystate blue
+ end
+ if not set -q __fish_git_prompt_color_stagedstate
+ set -g __fish_git_prompt_color_stagedstate yellow
+ end
+ if not set -q __fish_git_prompt_color_invalidstate
+ set -g __fish_git_prompt_color_invalidstate red
+ end
+ if not set -q __fish_git_prompt_color_untrackedfiles
+ set -g __fish_git_prompt_color_untrackedfiles $fish_color_normal
+ end
+ if not set -q __fish_git_prompt_color_cleanstate
+ set -g __fish_git_prompt_color_cleanstate green --bold
+ end
+
+ set -l color_cwd
+ set -l suffix
+ if functions -q fish_is_root_user; and fish_is_root_user
+ if set -q fish_color_cwd_root
+ set color_cwd $fish_color_cwd_root
+ else
+ set color_cwd $fish_color_cwd
+ end
+ set suffix '#'
+ else
+ set color_cwd $fish_color_cwd
+ set suffix '$'
+ end
+
+ # PWD
+ set_color $color_cwd
+ echo -n (prompt_pwd)
+ set_color normal
+
+ printf '%s ' (fish_vcs_prompt)
+
+ set -l status_color (set_color $fish_color_status)
+ set -l statusb_color (set_color --bold $fish_color_status)
+ set -l prompt_status (__fish_print_pipestatus "[" "]" "|" "$status_color" "$statusb_color" $last_pipestatus)
+ echo -n $prompt_status
+ set_color normal
+
+ echo -n "$suffix "
+end