Files
fish-config/configs/theme.fish
2025-11-16 23:28:49 +01:00

84 lines
3.1 KiB
Fish
Executable File

# Load pywal colors (extract from ~/.cache/wal/colors.json)
if test -e $HOME/.cache/wal/colors.json
set -g theme_0 (jq -r '.colors.color0' ~/.cache/wal/colors.json) # Primary color
set -g theme_1 (jq -r '.colors.color1' ~/.cache/wal/colors.json) # Secondary color (e.g., for git, @)
set -g theme_2 (jq -r '.colors.color2' ~/.cache/wal/colors.json) # Third color (e.g., for hostname)
set -g background_color (jq -r '.special.background' ~/.cache/wal/colors.json) # Background color
set -g foreground_color (jq -r '.special.foreground' ~/.cache/wal/colors.json) # Foreground color
else
set -g background_color "#1e1e2e" # Dark slate
set -g foreground_color "#cdd6f4" # Soft white/light gray
# Primary and accent colors
set -g theme_0 "#a6e3a1" # Green - success, directories
set -g theme_1 "#f38ba8" # Red - errors, git changes
set -g theme_2 "#89b4fa" # Blue - hostnames, info
# Extra accent colors
set -g theme_3 "#f9e2af" # Yellow - warnings
set -g theme_4 "#cba6f7" # Magenta - user prompts
set -g theme_5 "#94e2d5" # Cyan - secondary info
end
# BOBTHEFISH COLORING: Apply pywal colors to the bobthefish theme
# Username Color
set -g theme_username_color $theme_0
# Hostname Color
set -g theme_hostname_color $theme_2
# Git prompt color
set -g theme_git_branch_color $theme_1
set -g theme_git_dirty_color $theme_1
set -g theme_git_staged_color $theme_2
# Current directory color
set -g theme_pwd_color $theme_0
# Set background and foreground based on pywal theme
set -g theme_background_color $background_color
set -g theme_foreground_color $foreground_color
# Retain all existing theme settings (don't overwrite the options you have)
set -g theme_display_git yes
set -g theme_display_git_dirty no
set -g theme_display_git_untracked no
set -g theme_display_git_ahead_verbose yes
set -g theme_display_git_dirty_verbose yes
set -g theme_display_git_stashed_verbose yes
set -g theme_display_git_default_branch yes
set -g theme_git_default_branches master main
set -g theme_git_worktree_support yes
set -g theme_use_abbreviated_branch_name yes
set -g theme_display_vagrant yes
set -g theme_display_docker_machine no
set -g theme_display_k8s_context yes
set -g theme_display_hg yes
set -g theme_display_virtualenv no
set -g theme_display_nix no
set -g theme_display_ruby no
set -g theme_display_node yes
set -g theme_display_user ssh
set -g theme_display_hostname ssh
set -g theme_display_vi no
set -g theme_display_date no
set -g theme_display_cmd_duration yes
set -g theme_title_display_process yes
set -g theme_title_display_path no
set -g theme_title_display_user yes
set -g theme_title_use_abbreviated_path no
set -g theme_date_format "+%a %H:%M"
set -g theme_date_timezone America/Los_Angeles
set -g theme_avoid_ambiguous_glyphs yes
set -g theme_powerline_fonts no
set -g theme_nerd_fonts yes
set -g theme_show_exit_status yes
set -g theme_display_jobs_verbose yes
set -g default_user your_normal_user
set -g theme_color_scheme dark
set -g fish_prompt_pwd_dir_length 0
set -g theme_project_dir_length 1
set -g theme_newline_cursor yes
set -g theme_newline_prompt '$ '