# Detect the terminal's light/dark background (OSC 11) and expose it as # $TERM_BACKGROUND so nvim and other tools can pick a matching theme. Must run # *above* the p10k instant-prompt block because it reads the tty. if [[ -o interactive && -z "$TERM_BACKGROUND" && -x "$HOME/bin/term-background" ]]; then export TERM_BACKGROUND="$("$HOME/bin/term-background")" fi # Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc. # Initialization code that may require console input (password prompts, [y/n] # confirmations, etc.) must go above this block; everything else may go below. if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" fi # Load compdef immediately (needed before antidote loads plugins that call # it), but only do the expensive security audit + dump rebuild once a day; # otherwise just source the existing dump (-C). autoload -U +X compinit () { setopt local_options extended_glob if [[ -n ${HOME}/.zcompdump(#qN.mh+24) ]]; then compinit else compinit -C 2>/dev/null || compinit fi } if [ -f $HOME/.zshrc_local ]; then source $HOME/.zshrc_local fi setopt noEXTENDED_GLOB ENV_FILE="$HOME/.environment" LOCAL_ENV_FILE="$HOME/.environment.local" ALIAS_FILE="$HOME/.aliases" LOCAL_ALIAS_FILE="$HOME/.aliases.local" source $ENV_FILE if [ -f $LOCAL_ENV_FILE ]; then source $LOCAL_ENV_FILE fi source $ALIAS_FILE if [ -f $LOCAL_ALIAS_FILE ]; then source $LOCAL_ALIAS_FILE fi # configure oh-my-zsh/nvm for lazy loading nvm zstyle ':omz:plugins:nvm' lazy yes zstyle ':omz:plugins:nvm' autoload yes zstyle ':omz:plugins:nvm' silent-autoload yes source $HOME/.antidote/antidote.zsh antidote load # To customize prompt, run `p10k configure` or edit ~/.p10k.zsh. [[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh # vim mode bindkey -v [ -f ~/.fzf.zsh ] && source ~/.fzf.zsh bindkey '^f' fzf-file-widget