#
# ~/.bashrc — managed by chezmoi
#

# If not running interactively, don't do anything
[[ $- != *i* ]] && return

# PATH extras / tool envs (machine-optional, guarded)
case ":$PATH:" in *":$HOME/.local/bin:"*) ;; *) PATH="$HOME/.local/bin:$PATH" ;; esac
[ -f "$HOME/.cargo/env" ] && . "$HOME/.cargo/env"
[ -d "$HOME/.maestro/bin" ] && PATH="$PATH:$HOME/.maestro/bin"

# Shared aliases (same set as fish/zsh; source of truth: .chezmoidata/aliases.yaml)
[ -f "$HOME/.config/shell/aliases.sh" ] && . "$HOME/.config/shell/aliases.sh"

# Shell functions — one file per function, bash ports of the fish ones
# (cwd/history-touching helpers; standalone tools live in ~/.local/bin)
if [ -d "$HOME/.config/bash/functions" ]; then
    for _f in "$HOME/.config/bash/functions"/*.bash; do
        [ -r "$_f" ] && . "$_f"
    done
    unset _f
fi

# Flyline — enhanced Bash line editing (machine-optional, guarded)
[ -f "$HOME/.local/lib/libflyline.so" ] && enable -f "$HOME/.local/lib/libflyline.so" flyline


# Generated for envman. Do not edit.
[ -s "$HOME/.config/envman/load.sh" ] && . "$HOME/.config/envman/load.sh"

# Prompt — starship, consistent with fish
command -v starship >/dev/null 2>&1 && eval "$(starship init bash)"

. "$HOME/.atuin/bin/env"
eval "$(atuin init bash)"
