export EDITOR="nvim"
export VISUAL="nvim"

export HISTFILE=~/.zsh_history
export HISTSIZE=5000000
export SAVEHIST=$HISTSIZE

export CLICOLOR=1

export KEEPASS_DB=~/Nextcloud/.keepass/localvault.kdbx

export DOTFILES="$HOME/dotfiles"
export K9S_CONFIG_DIR="$HOME/.config/k9s"

# colored GCC warnings and errors
export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'

# Man pages
export MANPAGER='nvim +Man!'

export SSH_ENV="$HOME/.ssh/agent-environment"

export GOPRIVATE="gitlab.feedzai.com,git.hcf.zone"

. "$HOME/.cargo/env"

# Interactive shells (e.g. new tmux windows): set PATH so we don't need a login shell.
# Tmux uses non-login shell by default; this avoids slow .zprofile on every new window.
if [[ -t 0 ]]; then
    export PATH=~/.local/bin:$PATH
    export PATH=~/.dotnet:$PATH
    export PATH=$DOTFILES/scripts/hcf/:$PATH
    case "$(uname -s)" in
        Linux*) eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)" ;;
        Darwin*)
            eval "$(/opt/homebrew/bin/brew shellenv)"
            export PATH="/opt/homebrew/bin/bash/bin:$PATH"
            ;;
    esac
    if [[ -f "${HOME}/.cache/zsh/go-gopath" ]]; then
        export PATH="$(cat "${HOME}/.cache/zsh/go-gopath")/bin:$PATH"
    else
        export PATH="$(go env GOPATH)/bin:$PATH"
        mkdir -p "${HOME}/.cache/zsh" && go env GOPATH >"${HOME}/.cache/zsh/go-gopath" 2>/dev/null
    fi
    # Tell tmux our cwd early so tmux-window-name plugin can show the directory (not "-")
    [[ -n "$TMUX" ]] && printf '\e]7;file://%s\a' "$(pwd)"
fi

export PATH
