summary refs log tree commit diff
path: root/.config
diff options
context:
space:
mode:
authorZach DeCook <zachdecook@librem.one>2025-10-03 11:46:33 -0400
committerZach DeCook <zachdecook@librem.one>2025-10-03 11:46:33 -0400
commite32ccfa371881b596aecf2257a2822b350f4b95c (patch)
treef4f2554ca11e7a825e1a96820537fea0e22ace88 /.config
parentb15eccb2c39243611bf843b8fbc8459801a0fdaa (diff)
downloaddotfiles-e32ccfa371881b596aecf2257a2822b350f4b95c.tar.gz
modified fish prompt
Diffstat (limited to '.config')
-rw-r--r--.config/fish/functions/fish_prompt.fish35
1 files changed, 35 insertions, 0 deletions
diff --git a/.config/fish/functions/fish_prompt.fish b/.config/fish/functions/fish_prompt.fish
new file mode 100644
index 0000000..d2216ae
--- /dev/null
+++ b/.config/fish/functions/fish_prompt.fish
@@ -0,0 +1,35 @@
+# name: Default
+# author: Lily Ballard
+
+function fish_prompt --description 'Write out the prompt'
+    set -l last_pipestatus $pipestatus
+    set -lx __fish_last_status $status # Export for __fish_print_pipestatus.
+    set -l normal (set_color normal)
+    set -q fish_color_status
+    or set -g fish_color_status red
+
+    # Color the prompt differently when we're root
+    set -l color_cwd $fish_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
+        end
+        set suffix '#'
+    end
+
+    # Write pipestatus
+    # If the status was carried over (if no command is issued or if `set` leaves the status untouched), don't bold it.
+    set -l bold_flag --bold
+    set -q __fish_prompt_status_generation; or set -g __fish_prompt_status_generation $status_generation
+    if test $__fish_prompt_status_generation = $status_generation
+        set bold_flag
+    end
+    set __fish_prompt_status_generation $status_generation
+    set -l status_color (set_color $fish_color_status)
+    set -l statusb_color (set_color $bold_flag $fish_color_status)
+    set -l prompt_status (__fish_print_pipestatus "[" "]" "|" "$status_color" "$statusb_color" $last_pipestatus)
+
+    #echo -n -s  " " $prompt_status $suffix " "
+    echo -n -s $prompt_status (set_color $fish_color_cwd)"><> "$normal
+end