From 5ad8af0275e68b5e773691ea1fc1fd3f487c24df Mon Sep 17 00:00:00 2001 From: Davide Frattarolo Date: Wed, 10 Dec 2025 12:20:34 +0100 Subject: [PATCH] Fix --- config.fish | 35 +++++++++++----------- functions/fish_prompt.fish | 61 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 78 insertions(+), 18 deletions(-) create mode 100644 functions/fish_prompt.fish diff --git a/config.fish b/config.fish index ae24674..fe33bd6 100644 --- a/config.fish +++ b/config.fish @@ -3,6 +3,7 @@ set -g fish_greeting "Hi Dadd" # Set editor set -gx EDITOR nvim set -gx KUBE_EDITOR nvim +set -g TERM xterm-256color # Set correct TERM and TERMINAL for kitty set -gx TERM xterm-kitty @@ -19,26 +20,24 @@ if status is-interactive # Alt-o Open a file/dir using default editor ($EDITOR) # Alt-Shift-o Open a file/dir using xdg-open or open command - set -g fish_sequence_key_delay_ms 200 - bind -M insert -m default j,k cancel repaint-mode - bind -M insert \cn \\t - set -q KREW_ROOT; and set -gx PATH $PATH $KREW_ROOT/.krew/bin; or set -gx PATH $PATH $HOME/.krew/bin + set -g fish_sequence_key_delay_ms 200 + bind -M insert -m default j,k cancel repaint-mode + bind -M insert \cn \\t + set -q KREW_ROOT; and set -gx PATH $PATH $KREW_ROOT/.krew/bin; or set -gx PATH $PATH $HOME/.krew/bin - alias claude="~/.claude/local/claude" - # Check max tmux window in the Home session and open the Home session in a new tmux window - # Find max window number in the Home session - #if test -z "$TMUX"; - # # set name "$(date '+%Y%m%d_%H%M%S')" - # # exec flock -w 1 -F -n "/tmp/zellij-$name" zellij -s "$name" - # exec tmux - #end - # if test -z "$ZELLIJ"; - # # set name "$(date '+%Y%m%d_%H%M%S')" - # # exec flock -w 1 -F -n "/tmp/zellij-$name" zellij -s "$name" - # exec zellij - # end + # Check max tmux window in the Home session and open the Home session in a new tmux window + # Find max window number in the Home session + #if test -z "$TMUX"; + # # set name "$(date '+%Y%m%d_%H%M%S')" + # # exec flock -w 1 -F -n "/tmp/zellij-$name" zellij -s "$name" + # exec tmux + #end + # if test -z "$ZELLIJ"; + # # set name "$(date '+%Y%m%d_%H%M%S')" + # # exec flock -w 1 -F -n "/tmp/zellij-$name" zellij -s "$name" + # exec zellij + # end end -# opencode fish_add_path /home/df/.opencode/bin diff --git a/functions/fish_prompt.fish b/functions/fish_prompt.fish new file mode 100644 index 0000000..f3ec966 --- /dev/null +++ b/functions/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