diff --git a/.zshrc b/.zshrc new file mode 100644 index 0000000..75ca269 --- /dev/null +++ b/.zshrc @@ -0,0 +1,55 @@ +# Consider moving these to a script in .rc.d if they don't need to be before the other scripts in there. +# If Apple Silicon Homebrew is installed activate it. +if [ -x "/usr/local/homebrew/bin/brew" ]; then + eval "$(/usr/local/homebrew/bin/brew shellenv)" + # If x86_64 Homebrew is installed alias it to brew86. + if [ -x "/opt/homebrew/bin/brew" ]; then + alias brew86='arch -x86_64 /usr/local/homebrew/bin/brew' + fi +fi +# If x86_64 Homebrew is installed activate it. +if [ -x "/opt/homebrew/bin/brew" ]; then + eval "$(/opt/homebrew/bin/brew shellenv)" + # If Apple Silicon Homebrew is installed alias it to brewarm. + if [ -x "/usr/local/homebrew/bin/brew" ]; then + alias brewarm='arch -arm64 /opt/homebrew/bin/brew' + fi +fi + +# Source all scripts in ~/.rc.d +for f in ~/.rc.d/*.sh; do + source "$f" +done + +# Append personal bin to path +if [ -d "$HOME/bin" ] ; then + PATH="$HOME/bin:$PATH" +fi + +# Append local personal bin to path +if [ -d "$HOME/.local/bin" ] ; then + PATH="$HOME/.local/bin:$PATH" +fi + +# Activate ZSH autocompletion. +autoload -Uz compinit +compinit + +# Load ZSH Functions +fpath=( ~/.zsh_functions "${fpath[@]}" ) +# autoload -Uz clone +# autoload -Uz compress +# autoload -Uz remind +# autoload -Uz whatsapp-backup +# autoload -Uz zh + + +# Configure ZSH History +setopt HIST_IGNORE_SPACE +setopt HIST_IGNORE_DUPS +setopt INC_APPEND_HISTORY +HISTSIZE=1000 +SAVEHIST=10000 + +# TODO: Look for an equivalent for `shopt -s checkwinsize` +# I don't even remember what it does, but I think it's bash specific.