fish_add_path /opt/homebrew/bin fish_add_path /opt/homebrew/coreutils/libexec/gnubin fish_add_path /usr/local/opt/coreutils/libexec/gnubin fish_add_path /usr/local/bin fish_add_path /snap/bin fish_add_path $HOME/.local/bin fish_add_path $HOME/.cargo/bin fish_add_path $HOME/.go/bin set -gx GOPATH $HOME/.go set -gx EDITOR nvim set fish_color_valid_path set -g fish_greeting if [ -f ~/.1password/agent.sock ]; set -g SSH_AUTH_SOCK ~/.1password/agent.sock end # Commands to run in interactive sessions can go here if status is-interactive if type -q atuin atuin init fish --disable-up-arrow | source end if type -q jump # initialize jump cd jump shell fish --bind=z | source end end # aliases alias b "bat -p" alias l "ls -la" alias lll "ls -latr" alias lg "lazygit" # abbreviations abbr lsn littlesnitch abbr nv nvim abbr vim nvim abbr vi nvim # functions function sss python3 ~/.config/scripts/ss.py --model gpt-5.2 $argv end function ss #python3 ~/.config/scripts/ss.py $argv python3 ~/.config/scripts/llm.py cmd $argv end set IPPATH (which ip) function ip $IPPATH --color=auto $argv end function s if test "$TERM_PROGRAM" = kitty kitty +kitten ssh $argv else ssh $argv end end function icat if test "$TERM_PROGRAM" = "WezTerm" wezterm imgcat $argv else if test "$TERM_PROGRAM" = "ghostty" env TERM=xterm-kitty viu $argv else kitty +kitten icat --align=left $argv end end function ils if test (count $argv) -eq 0 # 1. Find "Fast" images (JPG, PNG, etc.) - Case Insensitive set -l fast_imgs (find . -maxdepth 1 -type f \( -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.png" -o -iname "*.gif" -o -iname "*.webp" -o -iname "*.svg" \) | sort) # 2. Find "Slow" RAW images (ARW, DNG, etc.) # We search for these separately so we can append them to the end of the list set -l slow_imgs (find . -maxdepth 1 -type f \( -iname "*.arw" -o -iname "*.raw" -o -iname "*.cr2" -o -iname "*.nef" \) | sort) # Combine them: Fast first, Slow last set argv $fast_imgs $slow_imgs end if test (count $argv) -gt 0 # Move cursor to bottom to prevent scrolling glitches tput cup (tput lines) 0 # -g 5 : 5 images per row (The Grid!) # -p k : Force Kitty protocol (Cleanest for Ghostty) # --title : Show filename headers # --upscale=0 : Don't stretch small icons # --center : Center the whole grid in the terminal timg -p k --grid 5 --frames=1 --title --center $argv 2>/dev/null else echo "No images found." end end function winbox ~/dev/winbox/run.sh& end if test -e $HOME/.nix-profile/etc/profile.d/nix.fish source $HOME/.nix-profile/etc/profile.d/nix.fish end # The next line updates PATH for the Google Cloud SDK. if [ -f ~/dev/google-cloud-sdk/path.fish.inc ] source ~/dev/google-cloud-sdk/path.fish.inc end if type -q direnv direnv hook fish | source end if [ -f ~/.config/op/plugins.sh ] source ~/.config/op/plugins.sh end #fish_vi_key_bindings # bun set -gx BUN_INSTALL "$HOME/.bun" fish_add_path $HOME/.bun/bin if test -f "$HOME/.cargo/env.fish" source "$HOME/.cargo/env.fish" end fish_add_path $HOME/dev/screenpipe/target/debug # Added by LM Studio CLI (lms) fish_add_path $HOME/.cache/lm-studio/bin # Added by OrbStack: command-line tools and integration # This won't be added again if you remove it. source ~/.orbstack/shell/init.fish 2>/dev/null || : fish_add_path $HOME/.antigravity/antigravity/bin